diff --git a/pom.xml b/pom.xml
index 355d59e57..877a39613 100644
--- a/pom.xml
+++ b/pom.xml
@@ -30,6 +30,7 @@
11.0
2.4.1
3.15.2
+ 3.4.0
@@ -79,6 +80,13 @@
${jwt.version}
+
+
+ com.baomidou
+ dynamic-datasource-spring-boot-starter
+ ${datasource.version}
+
+
com.baomidou
mybatis-plus-boot-starter
@@ -89,6 +97,7 @@
mybatis-plus-extension
${mybatis-plus.version}
+
cn.hutool
hutool-all
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
index 5b55927bf..3a1a4aef0 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/RuoYiApplication.java
@@ -2,15 +2,14 @@ package com.ruoyi;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
/**
* 启动程序
- *
+ *
* @author ruoyi
*/
-@SpringBootApplication(exclude = { DataSourceAutoConfiguration.class })
+@SpringBootApplication
public class RuoYiApplication
{
public static void main(String[] args)
diff --git a/ruoyi-admin/src/main/resources/application-dev.yml b/ruoyi-admin/src/main/resources/application-dev.yml
index eb54d9c64..75093f771 100644
--- a/ruoyi-admin/src/main/resources/application-dev.yml
+++ b/ruoyi-admin/src/main/resources/application-dev.yml
@@ -1,21 +1,24 @@
# 数据源配置
spring:
+ autoconfigure:
+ exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
datasource:
type: com.alibaba.druid.pool.DruidDataSource
- driverClassName: com.mysql.cj.jdbc.Driver
+ dynamic:
+ datasource:
+ # 主库数据源
+ master:
+ driverClassName: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true
+ username: root
+ password: root
+ # 从库数据源
+ slave:
+ driverClassName: com.mysql.cj.jdbc.Driver
+ url:
+ username:
+ password:
druid:
- # 主库数据源
- master:
- url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true
- username: root
- password: root
- # 从库数据源
- slave:
- # 从数据源开关/默认关闭
- enabled: false
- url:
- username:
- password:
# 初始连接数
initialSize: 5
# 最小连接池数量
@@ -35,6 +38,8 @@ spring:
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
+ # 注意这个值和druid原生不一致,默认启动了stat
+ filters: stat
webStatFilter:
enabled: true
statViewServlet:
diff --git a/ruoyi-admin/src/main/resources/application-prod.yml b/ruoyi-admin/src/main/resources/application-prod.yml
index 2ebdcbdc6..75093f771 100644
--- a/ruoyi-admin/src/main/resources/application-prod.yml
+++ b/ruoyi-admin/src/main/resources/application-prod.yml
@@ -1,21 +1,24 @@
# 数据源配置
spring:
+ autoconfigure:
+ exclude: com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure
datasource:
type: com.alibaba.druid.pool.DruidDataSource
- driverClassName: com.mysql.cj.jdbc.Driver
+ dynamic:
+ datasource:
+ # 主库数据源
+ master:
+ driverClassName: com.mysql.cj.jdbc.Driver
+ url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true
+ username: root
+ password: root
+ # 从库数据源
+ slave:
+ driverClassName: com.mysql.cj.jdbc.Driver
+ url:
+ username:
+ password:
druid:
- # 主库数据源
- master:
- url: jdbc:mysql://localhost:3306/ry-vue?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&autoReconnect=true
- username: root
- password: root
- # 从库数据源
- slave:
- # 从数据源开关/默认关闭
- enabled: false
- url:
- username:
- password:
# 初始连接数
initialSize: 5
# 最小连接池数量
@@ -35,6 +38,8 @@ spring:
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
+ # 注意这个值和druid原生不一致,默认启动了stat
+ filters: stat
webStatFilter:
enabled: true
statViewServlet:
@@ -58,7 +63,7 @@ spring:
# redis 配置
redis:
# 地址
- host: 192.168.0.222
+ host: localhost
# 端口,默认为6379
port: 6379
# 数据库索引
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/datasource/DynamicDataSource.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/datasource/DynamicDataSource.java
deleted file mode 100644
index e70b8cfa7..000000000
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/datasource/DynamicDataSource.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.ruoyi.framework.datasource;
-
-import java.util.Map;
-import javax.sql.DataSource;
-import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
-
-/**
- * 动态数据源
- *
- * @author ruoyi
- */
-public class DynamicDataSource extends AbstractRoutingDataSource
-{
- public DynamicDataSource(DataSource defaultTargetDataSource, Map