如题。java
Spring的事务管理默认只对出现运行期异常(java.lang.RuntimeException及其子类)进行回滚。
若是一个方法抛出Exception或者Checked异常,Spring事务管理默认不进行回滚。事务
解决1,指定异常回滚io
@Transactional(rollbackFor = MyException.class)
解决2,手动回滚(异常抛不抛都行)class
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();