【发布时间】:2022-01-12 21:15:19
【问题描述】:
我有这样的代码:
@Service
public class AService {
public void methodA() {
try {
methodB();
} catch (Exception e) {
methodC(e);
}
}
}
methodB 正在从 DB 中读取。 如果发生在数据库中,methodC 正在写入异常。 出于某种原因,当方法 B 抛出错误时,方法 C 中的写入不起作用,我得到 - UnexpectedRollbackException: Transaction roll back because it has been marked as rollback-only.
不胜感激,谢谢!
【问题讨论】:
-
请添加
methodB()和methodC()的代码。此外,请包括所有与交易相关的注释。谢谢! -
试试这个answer的解决方案