SQL:事务失效几种场景(特别注意1 和4)
1、同类之间方法调用,使用this.b() 会导致事务失效
错误示例:
a(){
//...
this.b();
}
方案:
//IOC注入自身
A a;
a(){
//...
a.b();
}
2、runtimeException
注意是运行时异常。
3、rollback设置错误(Exception?runTimeE?)
@Transactional(rollbackFor = Exception.class)
4、异常信息被捕获(不要自行处理异常)
5、存储引擎本身不支持事务
Myisam该存储引擎自身不支持事务