java - @Transactional 两个事务管理器,一个事务
问题描述
我有一个情况,我有两个数据源,每个都有一个事务管理器,txm1 和 txm2。如果出现任何故障,我需要能够回滚两者。我注意到我无法使用 2 个 @Transactional 注释来注释单个方法。
最好的方法是什么?
例如我不能这样做:
@Transactional("txm1")
@Transactional("txm2")
public void updateBothDatabases() {
db1Repo.update();
db2Repo.update();
someService.invoke() //throws exception.
//needs to rollback db1 and db2.
}
解决方案
推荐阅读
- mysql - 如何使用 node.js 创建与 mysql 的等待连接
- awesome-wm - 发生鼠标点击时如何防止真棒改变焦点?
- go - 如何在go中打印反斜杠?
- javascript - 如何在路由中动态加载组件
- regex - 如何使用正则表达式仅检索单词
- c# - SQL Server 中的选择语句
- arrays - Powershell - Where-Clause 多个 JSON 数组键
- c++ - 为什么不能用常量表达式声明数组?
- mysql - 在 Window 10 中的同一 MySql 实例上克隆 MySQL 数据库
- python - Python - 使用 pyplot 将二维数组映射到网格?