Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
RuoYi Vue
Commits
2d992db6
Commit
2d992db6
authored
Dec 19, 2019
by
RuoYi
Browse files
修复多数据源下enabled=false导致读取不到bean导致异常问题
parent
687e67db
Changes
1
Hide whitespace changes
Inline
Side-by-side
ruoyi/src/main/java/com/ruoyi/framework/config/DruidConfig.java
View file @
2d992db6
...
@@ -19,6 +19,7 @@ import com.alibaba.druid.pool.DruidDataSource;
...
@@ -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
...
@@ -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
)
{
}
}
/**
/**
* 去除监控页面底部的广告
* 去除监控页面底部的广告
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment