正常的不生效大家可以自行百度。
方法外层已经有Transactional注解,默认属性是REQUIRES, 但内部方法抛异常死活都无法回滚
原因是方法里调用了一个Service里的B方法,而B方法里面调用了存储过程,而存储过程里有START TRANSACTION; 和COMMIT;导致当前事务被提交了。
修改Service里的B方法的传播属性为REQUIRES_NEW解决
正常的不生效大家可以自行百度。
方法外层已经有Transactional注解,默认属性是REQUIRES, 但内部方法抛异常死活都无法回滚
原因是方法里调用了一个Service里的B方法,而B方法里面调用了存储过程,而存储过程里有START TRANSACTION; 和COMMIT;导致当前事务被提交了。
修改Service里的B方法的传播属性为REQUIRES_NEW解决