前言
由于业务需求,需要同时在SpringBoot中配置两套数据源(连接两个数据库),要求能做到service层在调用各数据库表的mapper时能够自动切换数据源,也就是mapper自动访问正确的数据库。
本文内容:
在Springboot+Mybatis项目的基础上,学习多数据源的快速配置
避免网上某些配置数据源文章的深坑
SpringBoot实战系列教程回顾:
正文
多数据源配置实战(整合MyBatis)
SpringBoot版本:2.0.6.RELEASE
项目结构图(原谅我保护隐私代码):
image.png
排除SpringBoot的自动配置类DataSourceAutoConfiguration
首先要在@SpringBootApplication排除该类,因为它会读取application.properties文件的spring.datasource.*属性并自动配置单数据源
@SpringBootApplication(exclude = {
DataSourceAutoConfiguration.class
})
在application.properties中配置多数据源连接信息
你需要连接多少个数据库源,就配置几个,名字可以自由命名代替db1,db2
# database
db.conn.str = useUnicode=true&ch