您的位置:首页 > 编程语言 > Java开发

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事务管理的两种方式:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: