事务

作者: 绝对熙俊 | 来源:发表于2019-02-25 11:06 被阅读0次

事务的传播机制

propagation=


Propagation.REQUIRED:
必须要有事务,如果原来有事务则假如原事务,原来没有事务则新建个事务执行

Propagation.NOT_SUPPORTED:
不开启事务

Propagation.REQUIRES_NEW:
不管是否原来有事务,都新开启一个事务,将原来的事务挂起,等本事务执行完毕之后,再继续原来的事务

Propagation.MANDATORY:
必须要在一个事务中执行,如果原来没有事务,则直接异常

Propagation.NEVER:
必须没有事务执行,如果原来有事务,则直接异常

Propagation.SUPPORTS:
依调用该方法的地方为准,调用方有事务就按照他的事务执行,如果没有事务就无事务执行

事务会出现的问题

脏读:
一个事务读取到另一事务未提交的更新数据
隔离级别为读未提交会出现脏读,隔离级别高于读未提交可以解决该问题

不可重复读:
同一事务中多次读取数据返回结果不同,原因是其他事务在本事务读取数据的事务中改动了对应的数据
隔离级别为读未提交读已提交会出现不可重复读,隔离级别高于读已提交可解决该问题

幻读:
一个事务读取到另一个事务已经提交的 insert 数据
隔离级别为读已提交可重复读会出现幻读,隔离级别高于可重复读可解决该问题

事务隔离级别

isolation =


Isolation.READ_UNCOMMITTED
读取未提交数据(会出现脏读, 不可重复读) 基本不使用

Isolation.READ_COMMITTED
读取已提交数据(会出现不可重复读和幻读)

Isolation.REPEATABLE_READ
可重复读(会出现幻读)

Isolation.SERIALIZABLE
串行化

相关文章

  • java事务

    1、java事务介绍 2、JDBC事务 3、JTA事务 1、java事务介绍 java事务分类:JDBC事务、...

  • 事务、MySQL与Python交互、Python 中操作 MyS

    1、事务 事务操作分两种:自动事务(默认)、手动事务 手动事务的操作流程 开启事务:start transacti...

  • 数据库事务书目录

    数据库事务 事务概念 本地事务 全局事务 全局事务的定义 J2EE中全局事务的实现 全局事务的优缺点 基于消息的分...

  • MySQL事务

    MySQL-innodb-事务 事务的特性 事务的生命周期 失败的事务: 事务的控制语句 面试题 事务日志-red...

  • mysql事务隔离机制及其隔离级别、实现原理分析

    目录 事务特性ACID属性 并发事务带来的问题 事务隔离级别 事务实现原理 事务特性ACID属性 事务特性指的就是...

  • MULE事务配置

    在mule的事务可能为jdbc事务,jms事务,xa事务等,多种事务.这里讲解事务的几个动作: 相关的文档:htt...

  • 事务—事务模型

    程序猿基础知识的学习、理解、整理——事务(方方土) 事务,看似很简单,其实很复杂,作为一个程序猿,你对事务到底了解...

  • 事务—XA事务

    程序猿基础知识的学习、理解、整理——事务(方方土) 什么是XA事务?在什么场景下会出现XA事务? @Transac...

  • 事务—事务模式

    程序猿基础知识的学习、理解、整理——事务(方方土) 什么是事务模式?这里提到的事务模式,主要是指在系统设计过程中的...

  • JDK动态代理给Spring事务埋下的坑

    service 模拟动态代理事务 测试类 预测结果模拟事务:开启事务execute doLink模拟事务:关闭事务...

网友评论

      本文标题:事务

      本文链接:https://www.haomeiwen.com/subject/lxaulqtx.html