多数据源的事务管理

快乐风男� 2021-04-07 09:07:10
@Configuration
@MapperScan(basePackages = {
"org.com.dao.backMaster"
}, sqlSessionFactoryRef = "backMasterSqlSessionFactory", sqlSessionTemplateRef = "backMasterSqlSessionTemplate")
public class SqlSessionFactoryBackMaster {

@Bean(name = "backMaster")
@ConfigurationProperties(prefix = "spring.datasource.backmaster")
public HikariDataSource backMaster() {
return DataSourceBuilder.create().type(HikariDataSource.class).build();
}

@Bean(name = "backMasterSqlSessionFactory")
public SqlSessionFactory backMasterSqlSessionFactory(
@Qualifier("backMaster") DataSource backMaster) throws Exception {
SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();
factoryBean.setDataSource(backMaster);
factoryBean.setMapperLocations(new PathMatchingResourcePatternResolver()
.getResources("classpath:org/com/dao/backMaster/*.xml"));
factoryBean.setConfigLocation(
new DefaultResourceLoader().getResource("classpath:mybatis-config.xml"));
return factoryBean.getObject();
}

@Bean(name = "backMasterTransactionManager")
public DataSourceTransactionManager backMasterTransactionManager() {
return new DataSourceTransactionManager(backMaster());
}

@Bean(name = "backMasterSqlSessionTemplate")
public SqlSessionTemplate backMasterSqlSessionTemplate() throws Exception {
SqlSessionTemplate template = new SqlSessionTemplate(
backMasterSqlSessionFactory(backMaster()));
return template;
}
}

请教下各位,标红的是不是这个事务管理bean的作用范围呀
...全文
170 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
快乐风男� 2021-04-08
  • 打赏
  • 举报
回复
引用 1 楼 KeepSayingNo 的回复:
是的,你这个类定义了一个数据源:backmaster,用backMasterTransactionManager这个事务管理器进行管理
感谢感谢,我想问下,同一个数据源backmaster,我有一些xml生成在 org/com/dao/backMaster2/ 这个文件夹下面,backMasterTransactionManager这个事务管理器是不是就管理不到了?
KeepSayingNo 2021-04-08
  • 打赏
  • 举报
回复
是的,你这个类定义了一个数据源:backmaster,用backMasterTransactionManager这个事务管理器进行管理

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧