事务回滚异常处理:
Transaction rolled back because it has been marked as rollback-only报错处理。
错误原因:
A调用B,A中抓了B的异常,当B发生异常的时候,B的操作应该回滚,但是A吃了异常,A方法中没有产生异常,所以A的操作又应该提交,二者是相互矛盾的。
总结:(TryCatch 的嵌套使用导致。)
解决方法:
1.在最外层TryCatch的Catch 层里加入代码如下:TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
- 尽量不要在SERVICE层使用TRYCATCH