大连海航项目接口实现

xxg 21513c7e8d 问题修改 1 år sedan
bin 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
ruoyi-admin 21513c7e8d 问题修改 1 år sedan
ruoyi-common 6a4c256961 系统还原接口 待完成 1 år sedan
ruoyi-framework 835ec596b3 实际训练环节学员文书记录 新增comment字段 优化新增接口 新增教师点评文书接口 新增获取教师审阅结果接口 2 år sedan
ruoyi-generator 307e5376f3 综合数据库-文件 2 år sedan
ruoyi-quartz 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
ruoyi-system 21513c7e8d 问题修改 1 år sedan
LICENSE 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
README.md 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
pom.xml 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
ruoyi.iml 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
ry.bat 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan
ry.sh 0466b4a0ae 大连海航项目接口框架 - 新增 ftp websocket实现 2 år sedan

README.md

多数据源使用 1、在application-druid.yml配置从库数据源

从库数据源

slave:

# 从数据源开关/默认关闭
enabled: true
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: password

2、在DataSourceType类添加数据源枚举

/**

  • 从库 */ SLAVE 3、在DruidConfig配置读取数据源

@Bean @ConfigurationProperties("spring.datasource.druid.slave") @ConditionalOnProperty(prefix = "spring.datasource.druid.slave", name = "enabled", havingValue = "true") public DataSource slaveDataSource(DruidProperties druidProperties) {

DruidDataSource dataSource = DruidDataSourceBuilder.create().build();
return druidProperties.dataSource(dataSource);

} 4、在DruidConfig类dataSource方法添加数据源

setDataSource(targetDataSources, DataSourceType.SLAVE.name(), "slaveDataSource"); 5、在需要使用多数据源方法或类上添加@DataSource注解,其中value用来表示数据源

@DataSource(value = DataSourceType.SLAVE) public List selectUserList(SysUser user) {

return userMapper.selectUserList(user);

} @Service @DataSource(value = DataSourceType.SLAVE) public class SysUserServiceImpl #手动切换数据源 在需要切换数据源的方法中使用DynamicDataSourceContextHolder类实现手动切换,使用方法如下:

public List selectUserList(SysUser user) {

DynamicDataSourceContextHolder.setDataSourceType(DataSourceType.SLAVE.name());
List<SysUser> userList = userMapper.selectUserList(user);
DynamicDataSourceContextHolder.clearDataSourceType();
return userList;

} 逻辑实现代码 com.ruoyi.framework.aspectj.DataSourceAspect

注意:目前配置了一个从库,默认关闭状态。如果不需要多数据源不用做任何配置。 另外可新增多个从库。支持不同数据源(Mysql、Oracle、SQLServer)

提示

如果有Service方法内多个注解无效的情况使用内部方法调用SpringUtils.getAopProxy(this).xxxxxx(xxxx);