可同时配置多个多种数据源(例如:mysql,sqlserver,oracle)
官方文档地址
:https://gitee.com/baomidou/dynamic-datasource-spring-boot-starter
入门demo地址:https://gitee.com/li-yanning/springboot-multiple-data.git
<!--是一个基于springboot的快速集成多数据源的启动器(本篇重点)--> <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>3.4.1</version> </dependency>
server: port: 8100 spring: datasource: dynamic: #设置默认的数据源或者数据源组,默认值即为master primary: master #严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源 strict: false datasource: master: url: jdbc:mysql://localhost:3306/ajava?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false&rewriteBatchedStatements=true username: root password: root driver-class-name: com.mysql.jdbc.Driver second: url: jdbc:mysql://localhost:3306/heima_movies?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai&useSSL=false&rewriteBatchedStatements=true username: root password: root driver-class-name: com.mysql.jdbc.Driver # sqlserver: # url: jdbc:sqlserver://localhost:9092;DatabaseName=crm-gooling # username: root # password: root # driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver mybatis-plus: type-aliases-package: com.saiyou.entity mapper-locations: classpath*:/mapper/**/*Mapper.xml configuration: map-underscore-to-camel-case: true cache-enabled: true log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # sql输出到控制台,方便开发调试 global-config: banner: false db-config: id-type: auto insert-strategy: not_empty update-strategy: not_empty logic-delete-value: 1 logic-not-delete-value: 0 logic-delete-field: deleted
在service的实现类上加@Ds("second")注解
主数据源不用加@Ds注解
@DS 可以注解在方法上或类上