事务详解

外部起事物,内部起事物,内外都无Try Catch

    外部异常总结:内外都无try Catch的时候,外部异常,所有回滚。.net

    内部异常总结:内外都无try Catch的时候,内部异常,所有回滚。线程

 

外部起事物,内部起事物,外部有Try Catch

    外部异常总结:外部有try Catch时候,外部异常,不能回滚(事物错误)blog

    内部异常总结:外部有try Catch时候,内部异常,所有回滚  接口

 

外部起事物,内部起事物,内部有Try Catch

    外部异常总结:内部有try Catch,外部异常,所有回滚事务

    内部异常总结:内部有try Catch,内部异常,所有不回滚(事物失败);io

 

外部起事物,内部起事物,内外有Try Catch

    外部异常总结:内外都有try Catch,外部异常,事物执行一半(事物失败)gc

    内部事物总结:内外都有try Catch,内部异常,事物所有不会滚(事物失败)方法

 

嵌套事物总结

    

一、内外都无try Catch的时候,外部异常,所有回滚。
二、内外都无try Catch的时候,内部异常,所有回滚。
三、外部有try Catch时候,内部异常,所有回滚
四、内部有try Catch,外部异常,所有回滚
五、友情提示:外层方法中调取其余接口,或者另外开启线程的操做,必定放到最后!!!(由于调取接口不能回滚,必定要最后来处理)
总结:因为上面的异常被捕获致使,不少事务回滚失败。若是必定要将捕获,请捕获后又抛出RuntimeException(默认为异常捕获RuntimeException)。
注:默认事务类型

 

 

 

参考文献:https://blog.csdn.net/yangchangyong0/article/details/51960143im

相关文章
相关标签/搜索