Spring注解@transaction失效的几种场景
1、同一个类中的方法调用,导致事务注解失效(事务不回滚)
不受Spring Aop 管理
2、非public修饰符方法
Spring 事务拦截器会判定方法的修饰符是否为public,只有public的才可获取
3、数据引擎不支持事务
如使用的mysql 不是innodb引擎
4、异常被catch吃掉了
5、事务的传播属性类型设置为不需要回滚的
6、Rollback For设置错误
Spring 模糊抛出未检查异常 unchecked,或者error,才回滚事务
浙公网安备 33010602011771号