首页 > 解决方案 > @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.
}

标签: javaspringspring-data

解决方案


推荐阅读