@File
2019-10-08T09:32:41.000000Z
字数 1397
阅读 177
web java
<!-- dynamic --><dependency><groupId>com.baomidou</groupId><artifactId>dynamic-datasource-spring-boot-starter</artifactId><version>2.5.6</version></dependency><!-- druid连接池 --><dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.1.9</version></dependency>
spring:datasource:dynamic:primary: master #设置默认的数据源或者数据源组,默认值即为masterstrict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候回抛出异常,不启动会使用默认数据源.datasource:# 主master:url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaiusername:password:driver-class-name: com.mysql.jdbc.Driver# 从slave_1:url: jdbc:mysql://127.0.0.1:3307/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghaiusername:password:driver-class-name: com.mysql.jdbc.Driver
spring:datasource:dynamic:datasource:master_1:master_2:slave_1:slave_2:slave_3:
spring:datasource:dynamic:datasource:mysql:oracle:sqlserver:postgresql:h2:
@SpringBootApplication(exclude = DruidDataSourceAutoConfigure.class)
@DS的使用@DS则访问默认库(primary指定的)
// 声明类中所有方法默认使用的库// 匹配 slave_1 slave_2 slave_3@DS("slave")public class DemoServiceImpl implements DemoService{@Overridepublic List<DB> findAll(){}// 单独声明该方法使用的库// 只匹配 slave_1@DS("slave_1")@Overridepublic DB findById(int id){}}