文章目录
- 1. 事务管理场景
- 2. 使用说明
- 3. 事务失效场景
1. 事务管理场景
当方法内部操作多张表时,应该添加事务管理,保证原子性(同时成功或者同时失败)
2. 使用说明
添加@EnableTransactionManagement注解
在具体的方法上添加@Transactional注解,抛出RuntimeException异常会进行进行事务回滚
3. 事务失效场景
1.当抛出Exception异常会进行进行事务不会回滚,如果使用@Transactional注解,使事务生效,方法上调整为@Transactional(rollbackFor = Exception.class)
2.同一个类的内部方法相互调用,methodA调用methodB,methodB事务不起作用。
Spring的事务处理利用AOP生成动态代理类,内部方法调用不经过代理类,所以事务不起作用