springboot+mybatisplus 配置多数据源

springboot+mybatisplus 配置多数据源

1、引入依赖

pom.xml文件引入dynamic-datasource-spring-boot-starter包

<dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
        <version>3.3.5</version>
    </dependency>

2、配置数据源

spring.datasource.dynamic.datasource.master.url=jdbc:mysql://127.0.0.1:3306/db1?useUnicode=true spring.datasource.dynamic.datasource.master.username=uuu spring.datasource.dynamic.datasource.master.password=uuu spring.datasource.dynamic.datasource.master.driver-class-name=com.mysql.cj.jdbc.Driver

spring.datasource.dynamic.datasource.slave_1.url=jdbc:mysql://127.0.0.1:3306/db2?useUnicode=true spring.datasource.dynamic.datasource.slave_1.username=uuu2 spring.datasource.dynamic.datasource.slave_1.password= uuu2 spring.datasource.dynamic.datasource.slave_1.driver-class-name= com.mysql.cj.jdbc.Driver

3.在dao层引入 (在service层、方法上添加也可) @DS(“slave_1”)

@Mapper @DS(“slave_1”) public interface AbbMapper extends BaseMapper {

}

引入之后该dao、service、方法就会匹配到对应数据源进行查询 默认是master

另外还可以用不同的方式实现,如建立多个session工厂,指定不同的数据源,扫描不同的目录实现多数据源加载;还可以使用AOP动态切换的方式实现等。。

经验分享 程序员 微信小程序 职场和发展