|
@@ -19,6 +19,7 @@ import com.alibaba.druid.pool.DruidDataSource;
|
|
import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
|
|
import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder;
|
|
import com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties;
|
|
import com.alibaba.druid.spring.boot.autoconfigure.properties.DruidStatProperties;
|
|
import com.alibaba.druid.util.Utils;
|
|
import com.alibaba.druid.util.Utils;
|
|
|
|
+import com.ruoyi.common.utils.spring.SpringUtils;
|
|
import com.ruoyi.framework.aspectj.lang.enums.DataSourceType;
|
|
import com.ruoyi.framework.aspectj.lang.enums.DataSourceType;
|
|
import com.ruoyi.framework.config.properties.DruidProperties;
|
|
import com.ruoyi.framework.config.properties.DruidProperties;
|
|
import com.ruoyi.framework.datasource.DynamicDataSource;
|
|
import com.ruoyi.framework.datasource.DynamicDataSource;
|
|
@@ -50,13 +51,32 @@ public class DruidConfig
|
|
|
|
|
|
@Bean(name = "dynamicDataSource")
|
|
@Bean(name = "dynamicDataSource")
|
|
@Primary
|
|
@Primary
|
|
- public DynamicDataSource dataSource(DataSource masterDataSource, DataSource slaveDataSource)
|
|
|
|
|
|
+ public DynamicDataSource dataSource(DataSource masterDataSource)
|
|
{
|
|
{
|
|
Map<Object, Object> targetDataSources = new HashMap<>();
|
|
Map<Object, Object> targetDataSources = new HashMap<>();
|
|
targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource);
|
|
targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource);
|
|
- targetDataSources.put(DataSourceType.SLAVE.name(), slaveDataSource);
|
|
|
|
|
|
+ setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource");
|
|
return new DynamicDataSource(masterDataSource, targetDataSources);
|
|
return new DynamicDataSource(masterDataSource, targetDataSources);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 设置数据源
|
|
|
|
+ *
|
|
|
|
+ * @param targetDataSources 备选数据源集合
|
|
|
|
+ * @param sourceName 数据源名称
|
|
|
|
+ * @param beanName bean名称
|
|
|
|
+ */
|
|
|
|
+ public void setDataSource(Map<Object, Object> targetDataSources, String sourceName, String beanName)
|
|
|
|
+ {
|
|
|
|
+ try
|
|
|
|
+ {
|
|
|
|
+ DataSource dataSource = SpringUtils.getBean(beanName);
|
|
|
|
+ targetDataSources.put(sourceName, dataSource);
|
|
|
|
+ }
|
|
|
|
+ catch (Exception e)
|
|
|
|
+ {
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
|
|
/**
|
|
/**
|
|
* 去除监控页面底部的广告
|
|
* 去除监控页面底部的广告
|