一、事务的重要性,相信在实际开发过程中,都有很深的了解了。但是存在一个问题我们经常在开发的时候一般情况下都是用的注解的方式来进行事务的控制,说白了基于spring的7种事务控制方式来进行事务的之间的协调。 二、spring的7中事务传播行为 三、数据库四大特性和MySQL事务的隔离级别 1)四大特性 ...
分类:
编程语言 时间:
2019-06-24 12:36:00
阅读次数:
192
1、PROPAGATION_REQUIRED:如果当前没有事务,就创建一个事务,如果当前存在事务,就加入该事务,该设置是最常用的设置。 2、PROPAGATION_SUPPORTS:支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就以非事务执行。 3、PROPAGATION_MAN ...
分类:
编程语言 时间:
2019-06-21 23:52:22
阅读次数:
258
事务的属性 1 propagation用来设置事务的传播行为 事务的传播行为:一个方法运行在了一个开启事务的方法中,当前方法是使用依附的方 法事务还是使用自身的事务 Propagation.REQUIRED默认值 使用其依附的别人方法的事务 Propagation.REQUIRES_NEW 将原来的 ...
分类:
编程语言 时间:
2019-06-07 10:59:03
阅读次数:
87
目标 为后续分析事务源码前做一个介绍,有些属性可能光看这个依然看不懂,当看下篇文章 "Spring事务源码" 分析的时候就知道了。 PlatformTransactionManager TransactionDefinition 此接口主要用来定义事务的一些属性(传播行为、隔离级别、事务超时时间、事 ...
分类:
编程语言 时间:
2019-05-31 21:11:36
阅读次数:
113
Spring事物传播行为 Spring中事务的定义: Propagation(key属性确定代理应该给哪个方法增加事务行为。这样的属性最重要的部份是传播行为。)有以下选项可供使用: PROPAGATION_REQUIRED—如果当前有事务,就用当前事务,如果当前没有事务,就新建一个事务。这是最常见的 ...
分类:
编程语言 时间:
2019-05-15 00:19:25
阅读次数:
148
spring事务: 什么是事务: 事务逻辑上的一组操作,组成这组操作的各个逻辑单元,要么一起成功,要么一起失败. 事务特性(4种): 原子性 (atomicity):强调事务的不可分割. 一致性 (consistency):事务的执行的前后数据的完整性保持一致. 隔离性 (isolation):一个 ...
分类:
编程语言 时间:
2019-05-14 18:54:26
阅读次数:
117
Spring 事务属性一共有四种:传播行为、隔离级别、只读和事务超时 a) 传播行为定义了被调用方法的事务边界。 传播行为 意义 PROPERGATION_MANDATORY 表示方法必须运行在一个事务中,如果当前事务不存在,就抛出异常 PROPAGATION_NESTED 表示如果当前事务存在,则 ...
分类:
编程语言 时间:
2019-04-28 11:16:08
阅读次数:
159
很多人容易搞混不可重复读和幻读,确实这两者有些相似。但不可重复读重点在于update和delete,而幻读的重点在于insert。 避免不可重复读需要锁行就行 避免幻影读则需要锁表 如果使用锁机制来实现这两种隔离级别,在可重复读中,该sql第一次读取到数据后,就将这些数据加锁,其它事务无法修改这些数 ...
分类:
其他好文 时间:
2019-04-19 19:35:51
阅读次数:
196
最近写spring事务时用到REQUIRES_NEW遇到一些不回滚的问题,所以就记录一下。 场景1:在一个服务层里面方法1和方法2都加上事务,其中方法二设置上propagation=Propagation.REQUIRES_NEW,方法1调用方法2并且在执行完方法2后抛出一个异常,如下代码 1 @S ...
分类:
编程语言 时间:
2019-04-15 16:39:51
阅读次数:
242
1. Spring中七种事务传播行为 PROPAGATION(蔓延、传播、传输) 2. Spring中七种事务定义 Spring在TransactionDefinition接口中规定了7种类型的事务传播行为。事务传播行为是Spring框架独有的事务增强特性。这是Spring为我们提供的强大的工具箱, ...
分类:
编程语言 时间:
2019-03-15 17:13:40
阅读次数:
144