From 83f95a0a0ee18c2aa93f1ab453117ff8cde3fdff Mon Sep 17 00:00:00 2001 From: ccchuang Date: Tue, 28 Oct 2025 22:37:15 +0800 Subject: [PATCH 1/2] =?UTF-8?q?202.10.28=20=E6=96=B0=E5=A2=9E=E5=A4=9A?= =?UTF-8?q?=E4=B8=AA=E4=BB=8E=E5=BA=93=EF=BC=8C=E9=81=BF=E5=85=8D=E5=90=8E?= =?UTF-8?q?=E6=9C=9F=E4=BF=AE=E6=94=B9=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/common/enums/DataSourceType.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataSourceType.java b/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataSourceType.java index 4b5341d198..5fda8f453a 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataSourceType.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataSourceType.java @@ -15,5 +15,13 @@ public enum DataSourceType /** * 从库 */ - SLAVE + SLAVE, + + // 202.10.28 新增多个从库,避免后期修改代码 + SLAVE2, + + SLAVE3, + + SLAVE4, + // 202.10.28 新增多个从库,避免后期修改代码(end) } -- Gitee From f6512dc06fda9c6406db0f12b8a5912337c5b3c7 Mon Sep 17 00:00:00 2001 From: ccchuang Date: Tue, 28 Oct 2025 22:37:27 +0800 Subject: [PATCH 2/2] =?UTF-8?q?202.10.28=20=E6=96=B0=E5=A2=9E=E5=A4=9A?= =?UTF-8?q?=E4=B8=AA=E4=BB=8E=E5=BA=93=EF=BC=8C=E9=81=BF=E5=85=8D=E5=90=8E?= =?UTF-8?q?=E6=9C=9F=E4=BF=AE=E6=94=B9=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/framework/config/DruidConfig.java | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/DruidConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/DruidConfig.java index f671b3a303..8f4200bda5 100644 --- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/DruidConfig.java +++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/DruidConfig.java @@ -49,6 +49,34 @@ public class DruidConfig return druidProperties.dataSource(dataSource); } + // 202.10.28 新增多个从库,避免后期修改代码 + @Bean + @ConfigurationProperties("spring.datasource.druid.slave2") + @ConditionalOnProperty(prefix = "spring.datasource.druid.slave2", name = "enabled", havingValue = "true") + public DataSource slaveDataSource2(DruidProperties druidProperties) + { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + return druidProperties.dataSource(dataSource); + } + @Bean + @ConfigurationProperties("spring.datasource.druid.slave3") + @ConditionalOnProperty(prefix = "spring.datasource.druid.slave3", name = "enabled", havingValue = "true") + public DataSource slaveDataSource3(DruidProperties druidProperties) + { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + return druidProperties.dataSource(dataSource); + } + @Bean + @ConfigurationProperties("spring.datasource.druid.slave4") + @ConditionalOnProperty(prefix = "spring.datasource.druid.slave4", name = "enabled", havingValue = "true") + public DataSource slaveDataSource4(DruidProperties druidProperties) + { + DruidDataSource dataSource = DruidDataSourceBuilder.create().build(); + return druidProperties.dataSource(dataSource); + } + // 202.10.28 新增多个从库,避免后期修改代码(end) + + @Bean(name = "dynamicDataSource") @Primary public DynamicDataSource dataSource(DataSource masterDataSource) @@ -56,6 +84,12 @@ public class DruidConfig Map targetDataSources = new HashMap<>(); targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource); setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource"); + // 202.10.28 新增多个从库,避免后期修改代码 + setDataSource(targetDataSources, DataSourceType.SLAVE2.name(), "slaveDataSource2"); + setDataSource(targetDataSources, DataSourceType.SLAVE3.name(), "slaveDataSource3"); + setDataSource(targetDataSources, DataSourceType.SLAVE4.name(), "slaveDataSource4"); + // 202.10.28 新增多个从库,避免后期修改代码(end) + return new DynamicDataSource(masterDataSource, targetDataSources); } -- Gitee