文档章节

spring的事务管理

非白非黑
 非白非黑
发布于 2017/06/16 06:24
字数 577
阅读 23
收藏 0

spring事务是指一系列指令的集合,它必须服从ACID的原则,ACID指的是:原子性(atomicity),一致性(consistency),隔离性(isolation),持久性(durability),数据库为了解决隔离性导致的脏读,幻读,不可重复读等问题,引入四个隔离级别:

      1、ISOLATION_DEFAULT:这是一个platformTransactionManager默认的隔离级别,使用数据库默认的事务级别

      2、ISOLATION_READ_UNCOMMITTED:这是事务最低的隔离级别,它允许另外一个事务可以看到这个事务未提交的数据

      这种隔离级别有可能会产生脏读,不可重复读和幻读的问题

      3、ISOLATION_READ_COMMITTED:保证一个事务修改的数据提交以后才能被另一个事务读取,另一个事务不能读取该事务未提交的数据

      4、ISOLATION_REPEATABLE_READ:这种事务隔离级别可以防止脏读,不可重复读,但有可能会出现幻读(可以防止一个事务不能读到另一个事务未提交的数据)

      5、ISOLATION_SERIALIZABLE  这是花费最高代价但是最可靠的事务隔离级别,事务被处理为顺序执行,可以防止脏读,不可重复读,幻读

其中ACID是指:

         原子性:操作这些指令时,要么全部执行成功,要么全部不执行,只要有一个指令执行失败,所有的指令都执行失败,数据进行回滚,回到执行指令前的数据状态

        一致性:事务执行时从一个数据状态转换为另一个状态,但是对于整个数据的完整性保持稳定

        隔离性:在该事务执行的过程中,无论发生的任何数据改变都应该只是存在于该事务中,对外界不存在任何影响,只有在事务确定正确提交之后,才会显示该事务对数据的改变,其他事务才能获取这些改变后的数据

      持久性:当事务正确完成后,它对数据的改变是永久性的

spring管理的实现则是通过实现三个高层接口来实现的

            1、PlatformTransactionManager 平台事务管理器

            2、TransactionDefinition  事务定义信息

            3、TransactionStatus     事务状态信息

© 著作权归作者所有

共有 人打赏支持
非白非黑
粉丝 0
博文 1
码字总数 577
作品 0
河西
私信 提问

暂无文章

OSChina 周四乱弹 —— 我想过年请假提前回家两天

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @clouddyy :#每日一歌# 分享王力宏的单曲《爱错》 《爱错》- 王力宏 手机党少年们想听歌,请使劲儿戳(这里) @Caremorele :这几天起床有点...

小小编辑
28分钟前
8
1
Cookie 显示用户上次访问的时间

import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServlet;import javax.serv......

gwl_
今天
1
0
网络编程

第14天 网络编程 今日内容介绍  网络通信协议  UDP通信  TCP通信 今日学习目标  能够辨别UDP和TCP协议特点  能够说出UDP协议下两个常用类名称  能够说出TCP协议下两个常用类名称...

stars永恒
今天
2
0
二进制相关

二进制 众所周知计算机使用的是二进制,数字的二进制是如何表示的呢? 实际就是逢二进一。比如 2 用二进制就是 10。那么根据此可以推算出 5的二进制等于 10*10+1 即为 101。 在计算机中,负数以...

NotFound403
昨天
3
0
day22:

1、写一个getinterface.sh 脚本可以接受选项[i,I],完成下面任务: 1)使用格式:getinterface.sh [-i interface | -I ip] 2)当用户使用-i选项时,显示指定网卡的IP地址;当用户使用-I选项...

芬野de博客
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部