• 事务的隔离机制与传播+mvcc


    一:事务特性:原子、隔离、持久、一致

    二:事务隔离级别共四种,隔离的程度由低至高就是:

    1)READ-UNCOMMITTED(读取未提交内容)级别

    还没提交就可读,可能结果回滚,脏读

    2)READ-COMMITTED(读取提交内容)级别

    提交了后,读取的内容不一致,不可重复读

    3)REPEATABLE-READ(可重读)级别

    读完了,又加了一条,幻读,偏重于增删

    4)SERIERLIZED(串行化) 。

    三:2和3都是使用mvcc的机制,使用版本号控制,对于select不同,2是生成很多版本号,3是对于读只有一个版本号

    事务传播行为类型

    说明

    PROPAGATION_REQUIRED

    如果当前没有事务,就新建一个事务,如果已经存在一个事务中,加入到这个事务中。这是最常见的选择。

    PROPAGATION_SUPPORTS

    支持当前事务,如果当前没有事务,就以非事务方式执行。

    PROPAGATION_MANDATORY

    使用当前的事务,如果当前没有事务,就抛出异常。

    PROPAGATION_REQUIRES_NEW

    新建事务,如果当前存在事务,把当前事务挂起。

    PROPAGATION_NOT_SUPPORTED

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

    PROPAGATION_NEVER

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

    PROPAGATION_NESTED

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

    在无人能够指引的路上,自己就是明灯
  • 相关阅读:
    设计模式之单例模式
    设计模式之原型模式
    设计模式之建造者模式
    设计模式之抽象方法模式
    设计模式之简单工厂模式
    java中内存分配
    java引用类型
    Oracle
    Oracle
    Oracle
  • 原文地址:https://www.cnblogs.com/vv-lilu/p/15150100.html
Copyright © 2020-2023  润新知