5.spring中事务的传播属性

  1. 事务的一些属性

transaction (ACID):

  A : 原子性 :

  C : Consistent ( 一致性 )

  I : Isolate ( 隔离特性 )

  D : Durable ( 持久性 )

 

  事务属性 :

    1, 隔离级别 .

        |- ISOLATION_DEFAULT

        |- ISOLATION_READ_UNCOMMITED ---> 脏读

        |- ISOLATION_READ_COMMITED -----> 不可重复读

        |- ISOLATION_REPEATABLE(行级锁)--> 幻影读

        |- ISOLATION_SERIALIZABLE(表级锁)>     

    2, 传播特性       

      PROPAGATION_REQUIRED: 需要事务,存在:加入,不存在:自己创建.

      PROPAGATION_SUPPORTS: 支持事务, 存在:加入,不存在:不使用事务.

      PROPAGATION_MODITORY : 必须运行在事务中, 有事务:加入, 没事务: 异常.

      PROPAGATION_REQUIRED_NEW :必须运行在自己开启的新事务里,没有事务: 自己开启, 有 : 阻塞.

      PROPAGATION_NOT_SUPPORT : 不支持,存在:阻塞。不存在: 运行在非事务环境中。

      PROPAGATION_NEVER :不支持,存在:异常,不存在 : 运行在非事务环境中。

      PROPAGATION_NESTED : 嵌套事务(一般数据库不支持)

    3, 只读特性 .

        select xxx for update

    4, timeout .超时时间

    5, 回滚策略 :

         |- Checked Exception (提交事务)

         |- RuntimeException( 回滚 )

你可能感兴趣的:(5.spring中事务的传播属性)