【发布时间】:2021-10-19 13:45:31
【问题描述】:
如何回滚嵌套事务?假设如果method5中有异常,那么如何回滚method4也会发生变化。
@Singleton
public class Case {
@Inject
CaseService caseService;
@Transactional
void method2(){
var value = caseService.method4();
caseService.method5(value);
}
}
@Singleton
public class CaseService {
@Transactional(Transactional.TxType.REQUIRES_NEW)
public String method4(){
return "some";
}
@Transactional(Transactional.TxType.REQUIRES_NEW)
public void method5(String value){
}
}
【问题讨论】:
-
有什么理由不使用默认事务类型 - 需要吗?如果使用默认值,它将按您的预期工作。
-
为什么method4和method5是分开的事务?
标签: java hibernate jpa micronaut