若依框架ruoyi-vue前后端分离连接多数据源sqlserver2008

一、若依框架按照官方操作文档说明连接多数据源连接总是报错,折腾了很久终于找到连接的方法

 1、在pom.xml 引入sqlserver2008数据jar包

<dependency>
     <groupId>com.microsoft.sqlserver</groupId>
     <artifactId>sqljdbc4</artifactId>
     <version>4.0</version>
</dependency>

 2、配置从数据库数据源

slave:
     # 从数据源开关/默认关闭
     #driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
     enabled: true
     url: jdbc:sqlserver://192.168.1.200:1433;SelectMethod=cursor;DatabaseName=####
     username: ###
     password: #####

 3、注释validationQuery: SELECT 1 FROM DUA

            minEvictableIdleTimeMillis: 300000
            # 配置一个连接在池中最大生存的时间,单位是毫秒
            maxEvictableIdleTimeMillis: 900000
            # 配置检测连接是否有效
            #validationQuery: SELECT 1 FROM DUAL
            testWhileIdle: true
            testOnBorrow: false
            testOnReturn: false
            webStatFilter:
            enabled: true
            statViewServlet:
            enabled: true

4、找到DruidProperties.java配置文件注释掉以下几个配置例如

    @Value("${spring.datasource.druid.maxEvictableIdleTimeMillis}")
    private int maxEvictableIdleTimeMillis;

    /*@Value("${spring.datasource.druid.validationQuery}")
    private String validationQuery;*/

    @Value("${spring.datasource.druid.testWhileIdle}")
    private boolean testWhileIdle;

    /**
      * 用来检测连接是否有效的sql,要求是一个查询语句,常用select 'x'。如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用。
         */
    /*datasource.setValidationQuery(validationQuery);*/
    /** 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。 */
     
     datasource.setTestWhileIdle(testWhileIdle);


 


版权声明:本文为benchow168168原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。