我的编程空间,编程开发者的网络收藏夹
学习永远不晚

springboot下配置多数据源的方法

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

springboot下配置多数据源的方法

一、springboot 简介

SpringBoot使开发独立的,产品级别的基于Spring的应用变得非常简单,你只需"just run"。 我们为Spring平台及第三方库提 供开箱即用的设置,这样你就可以有条不紊地开始。多数Spring Boot应用需要很少的Spring配置。

你可以使用SpringBoot创建Java应用,并使用 java -jar 启动它或采用传统的war部署方式。我们也提供了一个运行"spring 脚本"的命令行工具。

二、传统的DataSource配置

Java的javax.sql.DataSource接口提供了一个标准的使用数据库连接的方法。传统做法是,一个DataSource使用一个URL连

同相应的证书去初始化一个数据库连接。

开发中,一个项目中经常会使用到不知一个数据源,本文主要讲解如何在springboot下整合mybatis配置多数据源。主要对比下传统的xml配置数据源和springboot下的数据源配置。

首先介绍下传统的xml下如何配置多数据源

1、项目结构

springboot下配置多数据源的方法

使用maven构建的项目中,所有的数据源配置到DAO层,即图中 subscribecore.dal module

2、dal的目录结构

springboot下配置多数据源的方法

数据库对应的java实体类。

每个库对应的mapper文件。

每个mapper文件对应的到的xml文件。

生产环境\测试环境对应的数据源配置文件。

每个数据库对应的配置文件。

3、具体的配置文件介绍

springboot下配置多数据源的方法

mysql库为例,详细展开对mysql数据配置的介绍

java实体类

使用的mysql库中的一张表,通过mybatis自动生成工具,生成了chartconfig类和chartconfigExample类。

msyql库的mapper文件

springboot下配置多数据源的方法

mapper文件对应的到的xml文件

springboot下配置多数据源的方法

mysql测试环境对应的数据源配置文件

springboot下配置多数据源的方法

myssql数据库对应的配置文件

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"     xmlns:context="http://www.springframework.org/schema/context"     xmlns:tx="http://www.springframework.org/schema/tx" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xmlns:aop="http://www.springframework.org/schema/aop" xmlns:cache="http://www.springframework.org/schema/cache"     xsi:schemaLocation="http://www.springframework.org/schema/beans   http://www.springframework.org/schema/beans/spring-beans.xsd             http://www.springframework.org/schema/context  http://www.springframework.org/schema/context/spring-context.xsd             http://www.springframework.org/schema/tx   http://www.springframework.org/schema/tx/spring-tx.xsd             http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd             http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd">   <context:component-scan base-package="com.zto.subscribecore"></context:component-scan>      <!-- 数据源 -->   <bean id="mysqlDataSource" class="com.alibaba.druid.pool.DruidDataSource"      init-method="init" destroy-method="close">     <!-- 驱动名称 -->     <property name="DriverClassName" value="${mysql.DriverClassName}"/>     <!-- JDBC连接串 -->     <property name="url" value="${mysql.url}"/>     <!-- 数据库用户名称 -->     <property name="username" value="${mysql.username}"/>     <!-- 数据库密码 -->     <property name="password" value="${mysql.password}"/>     <!-- 连接池最大使用连接数量 -->     <property name="maxActive" value="${mysql.maxActive}"/>     <!-- 初始化大小 -->     <property name="initialSize" value="${mysql.initialSize}"/>     <!-- 获取连接最大等待时间 -->     <property name="maxWait" value="${mysql.maxWait}"/>     <!-- 连接池最小空闲 -->     <property name="minIdle" value="${mysql.minIdle}"/>     <!-- 逐出连接的检测时间间隔 -->     <property name="timeBetweenEvictionRunsMillis" value="${mysql.timeBetweenEvictionRunsMillis}"/>     <!-- 最小逐出时间 -->     <property name="minEvictableIdleTimeMillis" value="${mysql.minEvictableIdleTimeMillis}"/>     <!-- 测试有效用的SQL Query -->     <property name="validationQuery" value="${mysql.validationQuery}"/>     <!-- 连接空闲时测试是否有效 -->     <property name="testWhileIdle" value="${mysql.testWhileIdle}"/>     <!-- 获取连接时测试是否有效 -->     <property name="testOnBorrow" value="${mysql.testOnBorrow}"/>     <!-- 归还连接时是否测试有效 -->     <property name="testOnReturn" value="${mysql.testOnReturn}"/>   </bean>    <bean id="mysqlTransactionManager"      class="org.springframework.jdbc.datasource.DataSourceTransactionManager">     <property name="dataSource" ref="mysqlDataSource"/>   </bean>    <tx:annotation-driven transaction-manager="mysqlTransactionManager"/>    <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">     <property name="basePackage" value="com.zto.subscribecore.dal.mapper.mysql"/>     <property name="sqlSessionFactoryBeanName" value="mysqlSqlSessionFactory"/>   </bean>    <bean id="mysqlSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">     <property name="dataSource" ref="mysqlDataSource"/>     <property name="mapperLocations" value="classpath*:com/zto/subscribecore/dal/mapper/mysql/*.xml"></property>     <property name="typeAliasesPackage" value="com.zto.subscribecore.dal.domain"/>   </bean>  </beans> 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

springboot下配置多数据源的方法

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

springboot下配置多数据源的方法

一、springboot 简介SpringBoot使开发独立的,产品级别的基于Spring的应用变得非常简单,你只需"just run"。 我们为Spring平台及第三方库提 供开箱即用的设置,这样你就可以有条不紊地开始。多数Spring
2023-05-31

springboot多数据源配置

简介 开发当中经常会遇到需要进行多库多表数据整合的需求,在无法拆分项目的情况下,就需要在一个项目中配置多数据源,实现多库数据的整合。本文是在springboot框架的基础上进行的多数据源配置,可参考,也欢迎指正 1、第一步:applicat
2023-08-24

springboot如何配置多数据源

在Spring Boot中配置多数据源可以通过创建多个DataSource bean,并使用@Primary和@Qualifier注解来指定默认数据源和其他数据源,然后在Repository类中使用@Qualifier注解来指定要使用的数据
springboot如何配置多数据源
2024-04-08

springboot怎么配置多数据源

在Spring Boot中配置多个数据源可以通过以下步骤来实现:在pom.xml文件中添加Spring Boot对多数据源的支持依赖:org.springframework.bootspring-boot-starter-data-jpac
2023-10-23

springboot中如何配置多数据源

这期内容当中小编将会给大家带来有关springboot中如何配置多数据源,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、建库建表1.1 创建数据库db1和数据库db21.2 在数据库db1中创建表db1
2023-06-15

ruoyi(若依)配置多数据源(mysql+postgresql),rouyi(Springboot)多数据源设置

一、除了MySQL驱动,我们还需要用到postgresql的驱动,所以我们先把驱动的依赖给导入进来 org.postgresql postgresql
2023-08-17

springboot整合多数据源配置的方式是什么

这篇文章将为大家详细讲解有关springboot整合多数据源配置的方式是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。简介主要介绍两种整合方式,分别是 springboot+mybati
2023-06-22

SpringBoot多数据源集成的方法

这篇文章主要介绍了SpringBoot多数据源集成的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot多数据源集成的方法文章都会有所收获,下面我们一起来看看吧。一、多数据源使用场景与弊端1.
2023-06-30

怎么在SpringBoot中配置多数据源

本篇文章为大家展示了怎么在SpringBoot中配置多数据源,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。多数据源配置首先是配置文件这里采用yml配置文件,其他类型配置文件同理我配置了两个数据源,一
2023-06-14

怎么使用SpringBoot配置多数据源

这篇文章主要介绍了怎么使用SpringBoot配置多数据源的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用SpringBoot配置多数据源文章都会有所收获,下面我们一起来看看吧。1. 引入jar包pom.
2023-06-29

Springboot多数据源配置之整合dynamic-datasource方式

这篇文章主要介绍了Springboot多数据源配置之整合dynamic-datasource方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-03-21

详解SpringBoot和Mybatis配置多数据源

目前业界操作数据库的框架一般是 Mybatis,但在很多业务场景下,我们需要在一个工程里配置多个数据源来实现业务逻辑。在SpringBoot中也可以实现多数据源并配合Mybatis框架编写xml文件来执行SQL。在SpringBoot中,配
2023-05-31

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录