1、application.yml里面配置數(shù)據(jù)源
druid:
# 主庫數(shù)據(jù)源
master:
url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: root
# 從庫數(shù)據(jù)源
slave:
# 從數(shù)據(jù)源開關(guān)/默認關(guān)閉
enabled: false
url:
username:
password:
# 工作流數(shù)據(jù)源
activity:
enabled: true
url: jdbc:mysql://localhost:3306/dingding_mid?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: root
2、在common模塊的enums目錄下的DataSourceType增加數(shù)據(jù)枚舉類型
package com.qilaike.common.enums;
/**
* 數(shù)據(jù)源
*
* @author ruoyi
*/
public enum DataSourceType
{
/**
* 主庫
*/
MASTER,
/**
* 從庫
*/
SLAVE,
/**
* 審批流庫
*/
ACTIVITY
}
3、在framework模塊下的config目錄下修改DruidConfig,照著自帶的從庫寫法文章來源:http://www.zghlxwxcb.cn/news/detail-803600.html
@Bean
@ConfigurationProperties("spring.datasource.druid.activity")
@ConditionalOnProperty(prefix = "spring.datasource.druid.activity", name = "enabled", havingValue = "true")
public DataSource activityDataSource(DruidProperties druidProperties)
{
DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
return druidProperties.dataSource(dataSource);
}
@Bean(name = "dynamicDataSource")
@Primary
public DynamicDataSource dataSource(DataSource masterDataSource)
{
Map<Object, Object> targetDataSources = new HashMap<>();
targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource);
setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource");
setDataSource(targetDataSources, DataSourceType.ACTIVITY.name(), "activityDataSource");
return new DynamicDataSource(masterDataSource, targetDataSources);
}
4、然后用@DataSource注解來切換數(shù)據(jù)源,可以寫在類上,也可以寫在方法里面,還可以寫覆蓋mp的方法,來實現(xiàn)某個service指定哪個數(shù)據(jù)庫,操作方法看我的另外一個博客spring boot 同一方法中如何使用多數(shù)據(jù)源文章來源地址http://www.zghlxwxcb.cn/news/detail-803600.html
@DataSource(DataSourceType.ACTIVITY)
到了這里,關(guān)于若依前后端分離版配置多數(shù)據(jù)源的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!