- 浏览: 56273 次
- 来自: 北京
最新评论
-
泛泛evil:
总结的很好,谢谢分享
JavaScript -
wanxkl:
哇!总结的太好了。。凤哥哥,你好强大啊。。请问您跟凤姐什么关系 ...
css应用
事务传播特性了解事务的几种传播特性
|
数据库操作1 |
数据库操作2 |
PROPAGATION_REQUIRED |
Transaction1 |
Transaction1 |
null |
Transaction2 |
|
PROPAGATION_SUPPORTS |
Transaction1 |
Transaction1 |
null |
null |
|
PROPAGATION_MANDATORY
|
Transaction1 |
Transaction1 |
null |
Throws Exception |
|
PROPAGATION_REQUIRES_NEW
|
Transaction1 |
Transaction2 |
null |
Transaction2 |
|
PROPAGATION_NOT_SUPPORTED
|
Transaction1 |
null |
null |
null |
|
PROPAGATION_NEVER
|
Transaction1 |
Throws Exception |
null |
null |
|
PROPAGATION_NESTED(Spring)
|
Transaction1 |
Transaction2 [Transaction1] |
null |
Transaction2 |
1. PROPAGATION_REQUIRED: 如果存在一个事务,则支持当前事务。如果没有事务则开启
2. PROPAGATION_SUPPORTS: 如果存在一个事务,支持当前事务。如果没有事务,则非事务的执行
3. PROPAGATION_MANDATORY: 如果已经存在一个事务,支持当前事务。如果没有一个活动的事务,则抛出异常。
4. PROPAGATION_REQUIRES_NEW: 总是开启一个新的事务。如果一个事务已经存在,则将这个存在的事务挂起。
5. PROPAGATION_NOT_SUPPORTED: 总是非事务地执行,并挂起任何存在的事务。
6. PROPAGATION_NEVER: 总是非事务地执行,如果存在一个活动事务,则抛出异常
7. PROPAGATION_NESTED:如果一个活动的事务存在,则运行在一个嵌套的事务中. 如果没有活动事务,
则按TransactionDefinition.PROPAGATION_REQUIRED 属性执行
事务隔离级别
|
脏读 |
不可重复读 |
幻象读 |
ISOLATION_READ_UNCOMMITTED |
√ |
√ |
√ |
ISOLATION_READ_COMMITTED |
|
√ |
√ |
ISOLATION_REPEATABLE_READ |
|
|
√ |
ISOLATION_SERIALIZABLE |
|
|
|
ISOLATION_DEFAULT |
PlatfromTransactionManager 默认的隔离级别 SQLServer :READ_COMMITTED MySql:REPEATABLE_READ |
Spring事务的隔离级别
1. ISOLATION_DEFAULT: 这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别.
另外四个与JDBC的隔离级别相对应
2. ISOLATION_READ_UNCOMMITTED: 这是事务最低的隔离级别,它充许令外一个事务可以看到这个事务未提交的数据。
这种隔离级别会产生脏读,不可重复读和幻像读。
3. ISOLATION_READ_COMMITTED: 保证一个事务修改的数据提交后才能被另外一个事务读取。另外一个事务不能读取该事务未提交的数据
4. ISOLATION_REPEATABLE_READ: 这种事务隔离级别可以防止脏读,不可重复读。但是可能出现幻像读。
5. ISOLATION_SERIALIZABLE 这是花费最高代价但是最可靠的事务隔离级别。事务被处理为顺序执行。
除了防止脏读,不可重复读外,还避免了幻像读。
脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。
不可重复读是 指在一个事务内,多次读同一数据。在这个事务还没有结束时,另外一个事务也访问该同一数据。那么,在第一个事务中的两次读数据之间,由于第二个事务的修 改,那么第一个事务两次读到的的数据可能是不一样的。
幻觉读是 指当事务不是独立执行时发生的一种现象,例如第一个事务对一个表中的数据进行了修改,这种修改涉及到表中的全部数据行。同时,第二个事务也修改这个表中的 数据,这种修改是向表中插入一行新数据。那么,以后就会发生操作第一个事务的用户发现表中还有没有修改的数据行,就好象发生了幻觉一样。
发表评论
-
lucene3.0 例一
2012-09-11 20:18 625package com.lucene;import java. ... -
lucene3.0
2012-09-11 20:15 836全文搜索 核心:创建索引——查询索引--分词器 索引引擎: ... -
分布式存储(转载)
2012-06-05 15:42 1170L1、HTML静态化其实大家都知道,效率最高、消耗最小的 ... -
java设计原则
2012-04-05 16:50 790原则1:DRY(Don't repeat ... -
java静态、动态代理
2012-04-04 18:51 811JAVA的动态代理 代理模式 代理模式是常用的java设计模式 ... -
Hibernate声明事务
2011-09-17 16:25 857事务处理 第一种方式: 首先配置datasoure: ... -
javascript应用3
2011-09-10 15:14 934打开一个新页面:{ <script t ... -
javascript应用2
2011-09-10 15:09 873日期插件的应用:{ <script type=& ... -
javascript应用1
2011-09-10 15:00 944javascript {<!-- 1.j ... -
css应用
2011-09-10 14:59 862CSS 本章目标 1、CSS的定义、优势 2、css的基 ... -
Html
2011-09-10 14:56 891HTML 超链接:{ <a href=”http:/ ... -
jsp、el、jstl.doc
2011-09-10 14:53 1303serlvet和jsp区别和联系 jsp从本质上讲也是s ... -
Jdbc
2011-09-10 14:49 872jdbc操作数据库插入、更新、删除、查找 mysql数据 ... -
文件上传步骤
2011-09-10 14:47 729文件上传的简单方法:(原理性的实验) 1. <b ... -
中文乱码问题解决
2011-09-10 14:43 7171. post方式提交的数据 采用request.setCha ... -
监听器
2011-09-10 14:36 847监听器概述 1.Listener是Servlet的监听器 ... -
过滤器
2011-09-10 14:35 12121. Servlet过滤器基础 Servlet过滤器是Se ... -
web编程常用配置2
2011-09-10 14:35 682c3p0.jar:C3PO是一个数据库连接池,Hibern ... -
web编程常用配置1
2011-09-10 14:33 956mysql数据库jdbc驱动 jdbcDriver = co ... -
sql练习
2011-09-10 14:28 22411.oracle数据库启动的服 ...
相关推荐
Spring控制Hibernate中的事务传播特性与隔离级别操作,通过利用spring和Hibernate的两个HibernateTemplate 和 jdbcTemplate类,实现数据的交互。
事务传播特性&事务隔离级别 详细的事务传播特性&事务隔离级别
有关JDBC事务 JTA事务 传播特性 隔离级别等等
java事务传播特性&事务隔离级别...
Spring事务的传播特性和隔离级别 事务的几种传播特性详细介绍
spring事务的传播特性和事务隔离级别
Java面试题54.Spring事务的传播特性和隔离级别.mp4
Spring 管理事务(传播特性、隔离级别、readonly).rar
java面试宝典
上面我们只是简单的使用事务,这里将讨论Spring事务机制中最重要的两个配置项,即隔离级别与传播行为。毫无疑问本节内容是本章的核心内容,也是互联网企业最关注的内容之一,因此他十分重要,值得花费大的篇幅去讨论...
1.说到数据库事务,⼈们脑海⾥⾃然不⾃然的就会浮现出事务的四⼤特性、四⼤隔离级别、七⼤传播特性。 四⼤还好说,问题是七⼤传播特性是哪⼉来的?是Spring在当前线程内,处理多个数据库操作⽅法事务时所做的⼀种...
3.并发事务带来的问题和解决方案(包含四种隔离级别和会产生的锁) 4.逐个分析脏读,不可重复读和幻读出现的场景和解决方案 5.事务的底层原理(附带流程图) 6.事务的7种传播性、使用场景和实际场景 7.spring事务15...
此外,Spring事务管理器支持多种类型的事务策略,包括不同的传播行为和隔离级别,允许开发者根据具体业务场景选择最合适的事务管理策略。深入理解Spring声明式事务的工作原理,不仅能帮助开发者更高效地使用Spring...
彻底搞清楚4种事务隔离级别:READ_UNCOMMITTED 读未提交隔离级别、READ_COMMITTED 读已提交隔离级别、REPEATABLE_READ 可重复度隔离级别、SERIALIZABLE 序列化隔离级别 彻底搞清楚MySQL的各种锁:行锁、表锁、共享锁...
目录IOC(控制反转)DI(依赖注入)AOP(面向切面编程)Spring事务事务传播特性脏读,不可重复读,幻读事务隔离级别不喜勿喷 如有雷同请联系本人!! IOC(控制反转) IOC是一种设计思想,而不是什么技术 传统方法...
spring事务7种传播特性和隔离级别的理解? spring boot的启动过程 spring事务实现的原理 aop切面 如何解决spring循环依赖问题? Redis篇: redis持久化的原理(RDB、AOF); redis缓存穿透、缓存雪崩,有没有在实际...
事务隔离级别和传播特性 iii. mysql 索引 b+树和二叉树区别,聚簇索引() redis 使用场景 分布式锁使用过的命令 session 服务实现 原理使用 ZooKeeper 介绍TCP/IP协议 介绍UDP和TCP协议的区别 介绍DNS域名解析过程 ...
事务的隔离级别?什么是脏读,不可重复读,幻读? 101 什么是事务 101 事务的四个特性:ACID 101 4种隔离级别 102 脏读、不可重复读、幻读 105 【数据库】索引的结构有哪些? 107 【数据库】乐观锁与悲观锁的区别 ...
Java面试题54.Spring事务的传播特性和隔离级别 Java面试题55.ORM是什么?ORM框架是什么? Java面试题56.ibatis和hibernate有什么不同 Java面试题57.hibernate对象状态及其转换 Java面试题58:hibernate的缓存 Java...
9.1.4 事务隔离级别 9.1.5 JDBC对事务支持 9.2 ThreadLocal基础知识 9.2.1 ThreadLocal是什么 9.2.2 ThreadLocal的接口方法 9.2.3 一个TheadLocal实例 9.2.4 与Thread同步机制的比较 9.2.5 Spring使用ThreadLocal...