2.配置文件com.baomidou dynamic-datasource-spring-boot-starter 3.4.1
spring:
datasource:
dynamic:
primary: master #设置默认的数据源或者数据源组,默认值即为master
strict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候回抛出异常,不启动会使用默认数据源.
datasource:
master:
type: com.zaxxer.hikari.HikariDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3336/reconciliation?useSSL=FALSE&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=Asia/Shanghai
username: root
password: 123456
baseDb:
type: com.zaxxer.hikari.HikariDataSource
driverClassName: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/tw_base?useSSL=FALSE&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=Asia/Shanghai
username: root
password: 123456
其中,master为默认数据源,对数据库的操作都默认使用master库。
3.切换其他数据库使用@DS切换数据源。
@DS可以注解在方法上和类上,同时存在方法注解优先于类上注解。
没有@DS
@DS(“dsName”) dsName可以为组名也可以为具体某个库的名称
| 注解 | 结果 |
|---|---|
| 没有@DS | 默认数据源 |
| @DS(“dsName”) | dsName可以为组名也可以为具体某个库的名称 |
//在dao层的方法上切换数据源为baseDb
@DS("baseDb")
List getNowPhone();



