现在目前两个Oracle数据库来回切换 我用了AOP注解动态切换
因为在service层加了@Transactional导致每次都从事务中获取 看了一些帖子 说可以使用分布式事务来管理 jta atomikos
大部分资料都是mysql加xml形式来整合的 想知道有没有关于oracle 并且使用的是AOP注解来整合的 先谢过大家 ps:上个帖子写了AOP动态切换数据源源码

spring +oracle 多数据源事物切换不成功原因
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 编号灬9527 2022-03-18 16:32关注
你用mybatis的话,动态数据源在事务下面默认配置就不行的,事务内复用sqlsession,sqlsession中的Transaction也会被重复使用,最终导致执行sql的connection没有变,你要是一个mapper对应两个库的同一张表,你这就不行了;
即使一张表对应一个mapper,SpringManagedTransaction.openConnection通过DataSourceUtils.getConnection(dataSource),一个事务内还是被复用connection给你个demo吧
https://codeup.aliyun.com/62022d5674c3f3b550741db9/simple-routing-datasource本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录