说明
其实可以直接看官方手册:后台手册 | RuoYi
版本:ruoyi-vue
若依自带数据库:ry-vue
要生成代码的数据库(从数据库):yanhuo-test
步骤:
一、yml中配置数据源
application-druid.yml中配置从数据库,数据库名要小写
二、DataSourceType中配置从数据库的枚举值
三、DruidConfig中配置从库(两个地方要改)
1、注解
注解中的值要和application-druid.yml对应
@Bean(name = "yanhuoDataSource")
@ConfigurationProperties("spring.datasource.druid.yanhuo")
@ConditionalOnProperty(prefix = "spring.datasource.druid.yanhuo", name = "enabled", havingValue = "true")
public DataSource yanhuoDataSource(DruidProperties druidProperties)
{
DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
return druidProperties.dataSource(dataSource);
}
2、手动set数据源
@Bean(name = "dynamicDataSource")
@Primary
public DynamicDataSource dataSource(DataSource masterDataSource)
{
Map<Object, Object> targetDataSources = new HashMap<>();
targetDataSources.put(DataSourceType.MASTER.name(), masterDataSource);
setDataSource(targetDataSources, DataSourceType.YANHUO.name(), "yanhuoDataSource");
return new DynamicDataSource(masterDataSource, targetDataSources);
}
四、从数据库中新增两个表
从若依自带的数据库里面把这gen_table、gen_table_column这两个表的结构copy到从数据库里
五、使用多数据源
在ruoyi-generator模块中使用@DataSource指定数据源,表示后续要生成该数据源的代码
六、成功
控制台日志看到“切换到xxx数据源”就表示成功了