首页 > 数据库技术 > 详细

spring+mybatis 多数据库事务

时间:2021-04-07 23:25:25      阅读:35      评论:0      收藏:0      [点我收藏+]

https://zhidao.baidu.com/question/1928811909233574387.html

spring+mybatis 多数据库事务管理:一个方法里面能同时对两个数据库的数据进行操作

比如:一个方法内:在A数据库里的user表插入一条记录,在B数据库里的user表插入一条记录,要么都插入成功,要么都插入失败,只要有一方失败,就回滚事务。(本人已在网上查了很多资料,请给出具体解决方案,感激不尽!)
展开全部
  1. 定义两个DAO分别使用不同的数据源,ADAO连接A数据库,BDAO连接B数据库

  2. 定义一个Service类,加上Spring注解@Transactional,表示进行事务管理。

    将ADAO和BDAO注入到Service类里面。

    在service类里面创建一个方法,方法里调用ADAO的方法插入数据到A数据库的user表,然后调用BDAO的方法插入数据到B数据库的user表

更多追问追答
追问
这个行不通吧,你在Service层开启了事务之后切换数据库就无效了
追答
可以的,漏说了一点,事务要配置成jta分布式事务。
用spring的org.springframework.transaction.jta.JtaTransactionManager来支持

spring+mybatis 多数据库事务

原文:https://www.cnblogs.com/sunny3158/p/14629642.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!