我有一个包含2个方法的spring存储库,这两个方法可以单独调用,也可以一起调用。 我可以使用@Transactional注释进行单独的方法调用事务,但是如何跨方法进行事务处理。目标是当method2更新失败时也回滚method1。
答案 0 :(得分:0)
您需要定义@Transactional
的传播。
用
标记所有方法@Transactional(propagation = Propagation.REQUIRED)
REQUIRED表示如果调用方法没有打开新事务,它将打开一个新事务。如果有一个高开的交易,它就会被使用。
如果您需要单独的交易,请使用Propagation.REQUIRES_NEW
了解更多here