我在处理spring事务时遇到了问题。我需要catch块在分叉/自治事务上保持某种状态,然后抛出异常以回滚在主事务上执行的任何操作。
@Transactional(
propagation = Propagation.REQUIRED,
isolation = Isolation.READ_COMMITTED,
rollbackFor = {Exception.class})
public void createApplication() {
try {
saveState(0);
} catch(Exception e) {
saveState(1);
throw e;
}
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void saveState(Integet stateId) {
...
}
此设置的问题是所有内容都会回滚(如如何在spring boot中部分回滚数据中所述,将出现错误)。有没有一种方法可以在spring中分叉事务,或者这种方法根本不正确?
我还尝试将propagation.required与propagation.nested配对,但没有成功。
暂无答案!
目前还没有任何答案,快来回答吧!