我有1个问题:
spring数据jpa存储库中的隐式方法(findAll,保存等)为@Transactional
。
因此,在这种情况下:
@Transactional
public void atomicTransaction() {
repository1.save(entity);
repository2.save(entity);
}
如果repository2#save失败并回滚,它是否传播到atomicTransaction()
,以便reposotory1#save也回滚?
答案 0 :(得分:0)
jpa
存储库的@Transactional
方法将打开微交易,除非它已经处于事务上下文中。在您的情况下,您已用{{1}}注释了该方法,这意味着它将被视为一个原子工作单元,即要么完全执行 要么它执行发生错误时回滚。