Spring学习笔记(五):数据库事务
2015-08-01 11:13
561 查看
一、数据库事务有四个特性:
1、原子性:即从A划账到B,有一个地方出错,就撤销操作
2、一致性:即从A划账到B,A和B的总额不变
3、隔离性:在并发数据操作时,不同的事务有不同的数据空间,不会相互干扰
4、持久性:即事务提交完成后,如果数据库立即崩溃,当数据库重启时,会自动恢复提交的数据
二、
三、事务管理高层抽象的3个主要接口:
事务管理器:
事务隔离级别:
脏读:一个事物读取了另一个事物未提交的更新数据
不可重复读:一个事物读取了另一个事物提交的更新数据
幻读:一个事物读取了另一个事物插入的数据
MySQL默认事物隔离级别:REPATABLE_READ(可能出现幻读)
Oracle默认:READ_COMMITTED(可能出现不可重复读和幻读)
事务的传播行为:解决业务层方法之间的相互调用的问题–即web层调用多个service方法时,事务如何处理的问题(7种分3类)
下图是一个简单的示意图:
下图是具体的事务传播接口类:
四、Spring事务管理的两种方式:
1、原子性:即从A划账到B,有一个地方出错,就撤销操作
2、一致性:即从A划账到B,A和B的总额不变
3、隔离性:在并发数据操作时,不同的事务有不同的数据空间,不会相互干扰
4、持久性:即事务提交完成后,如果数据库立即崩溃,当数据库重启时,会自动恢复提交的数据
二、
三、事务管理高层抽象的3个主要接口:
事务管理器:
事务隔离级别:
脏读:一个事物读取了另一个事物未提交的更新数据
不可重复读:一个事物读取了另一个事物提交的更新数据
幻读:一个事物读取了另一个事物插入的数据
MySQL默认事物隔离级别:REPATABLE_READ(可能出现幻读)
Oracle默认:READ_COMMITTED(可能出现不可重复读和幻读)
事务的传播行为:解决业务层方法之间的相互调用的问题–即web层调用多个service方法时,事务如何处理的问题(7种分3类)
下图是一个简单的示意图:
下图是具体的事务传播接口类:
四、Spring事务管理的两种方式:
相关文章推荐
- java中的抽象类
- java 二维数组格式化显示
- JDBC的使用
- java基础知识回顾——异常
- MyEclipse10安装SVN插件
- java之yield(),sleep(),wait()区别详解-备忘笔记
- java中的访问者模式学习
- Eclipse最全快捷键
- Java运算符优先级
- Java中的数值数据、原码、反码、补码、数据类型及范围、字面量
- 浅析Java中的访问权限控制
- Struts2 Hello World 实例
- Spring+Struts2+mybatis三大框架的整合配置
- java学习第二天笔记
- Eclipse常用快捷键大全
- Java集合源码解读(一):集合总体框架
- struts2学习笔记(五)值栈与ognl
- eclipse 配置maven插件 以及nuxus 搭建本地私服仓库
- 轻松java学习之路1
- Java注解的使用