zoukankan      html  css  js  c++  java
  • 嵌套事务,默认事务传播机制测试总结PROPAGATION_REQUIRED

    这里应用的是默认事务传播机制而且是基于注解形式的。

    1.添加@Transactional注释即可进行事务异常回滚,如果需要try{}catch必须try{}catch后抛出异常否则不会回滚
    2.嵌套事务,内部异常,内外都回滚
    3.嵌套事务,外部异常,内外都回滚
    4.嵌套事务,外部异常try{}catch没有抛出异常,内外都不回滚
    5.嵌套事务,外部异常try{}catch抛出异常,内外都回滚
    6.嵌套事务,内部异常try{}catch没有抛出异常,内外都不回滚
    7.嵌套事务,内部异常try{}catch抛出异常,内外都回滚
     

    1、PROPAGATION_REQUIRED:如果当前没有事务,就创建一个新事务,如果当前存在事务,就加入该事务,该设置是最常用的设置。

    2、PROPAGATION_SUPPORTS:支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就以非事务执行。‘

    3、PROPAGATION_MANDATORY:支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就抛出异常。

    4、PROPAGATION_REQUIRES_NEW:创建新事务,无论当前存不存在事务,都创建新事务。

    5、PROPAGATION_NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

    6、PROPAGATION_NEVER:以非事务方式执行,如果当前存在事务,则抛出异常。

    7、PROPAGATION_NESTED:如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与PROPAGATION_REQUIRED类似的操作。

  • 相关阅读:
    swift
    swift
    swift
    swift
    swift
    swift
    swift
    swift
    Swift
    Nginx 访问控制
  • 原文地址:https://www.cnblogs.com/liclBlog/p/15349556.html
Copyright © 2011-2022 走看看