多数据源配置4

一、      正常模块配置(具体参考dt模块)

涉及到文件

  1. a.    /system/service/config/impl/RegionServiceImpl.java
  2. b.    /dt/controller/system/RegionController.java
  3. c.     dt/resources/dev/application-dev.yml
  4. d.    \dahua-b2b-dt\pom.xml

1、 引包

<dependency>
    <
groupId>com.baomidou</groupId>
    <
artifactId>mybatis-plus-boot-starter</artifactId>
    <
version>3.4.1</version>
</
dependency>
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>dynamic-datasource-spring-boot-starter</artifactId>
    <version>3.2.0</version>
</dependency>

 

2、 yml配置

a.mybatis-plus配置(注意classpath后面的*号)

mybatis-plus:
  mapper-locations: classpath*:/mappers/*/*.xml

b. datasource配置(特别注意:druid配置,数据源配置里的无效,踩坑N久,虽然启用啥的都没问题,不过会报:testWhileIdle is true, validationQuery not set 异常)

datasource:
  dynamic:
    primary: sqlserver-sg #设置默认的数据源或者数据源组,默认值即为master
   
strict: false #设置严格模式,默认false不启动. 启动后在未匹配到指定数据源时候会抛出异常,不启动则使用默认数据源.
   
datasource:
      sqlserver-sg:
        driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
        url: jdbc:sqlserver://10.1.1.146:1443;DatabaseName=DHB2BPortal_PLDEV
        username: b2b_sa
        password: '***'
        max-active: 100
        initial-size: 1
        max-wait: 60000
        min-idle: 1
        time-between-eviction-runs-millis: 60000
        min-evictable-idle-time-millis: 300000
        validation-query: select 1
        test-while-idle: false
        test-on-borrow: false
        test-on-return: false
        pool-prepared-statements: true
        max-open-prepared-statements: 50
        max-pool-prepared-statement-per-connection-size: 20
      sqlserver-de:
        driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
        url: jdbc:sqlserver://10.1.1.146:1443;DatabaseName=DHB2BPortal_PLUAT
        username: b2b_sa
        password: '***'
        max-active: 100
        initial-size: 1
        max-wait: 60000
        min-idle: 1
        time-between-eviction-runs-millis: 60000
        min-evictable-idle-time-millis: 300000
        validation-query: select 1
        test-while-idle: true
        test-on-borrow: false
        test-on-return: false
        pool-prepared-statements: true
        max-open-prepared-statements: 50
        max-pool-prepared-statement-per-connection-size: 20
    druid:
      validationQuery: select 1

3、 移除MyBatisConfig

因为yml里已经配置好了,所以无需该配置重新定义

4、 设置数据源

只要使用多数据源包里的@DS注解即可,如果没有加,则使用默认数据源

posted @ 2021-11-07 21:11  yydssc  阅读(51)  评论(0)    收藏  举报