四、Spring事务

1. 事务操作(事务概念)

1.1 什么事务

(1)事务是数据库操作最基本单元,逻辑上一组操作,要么都成功,如果有一个失败所有操

作都失败 (2)典型场景:银行转账

  • lucy 转账 100 元 给 mary
  • lucy 少 100,mary 多 100

1.2 事务四个特性(ACID)

(1)原子性
(2)一致性
(3)隔离性
(4)持久性

2. 事务操作(搭建事务操作环境)

在这里插入图片描述

2.1 创建数据库表,添加记录

在这里插入图片描述

2.2 创建 service,搭建 dao,完成对象创建和注入关系

在这里插入图片描述

在这里插入图片描述

2.3 在 dao 创建两个方法:多钱和少钱的方法,在 service 创建方法(转账的方法)

在这里插入图片描述

在这里插入图片描述

2.4 上面代码,如果正常执行没有问题的,但是如果代码执行过程中出现异常,有问题

在这里插入图片描述

在这里插入图片描述

3. 事务操作(Spring 事务管理介绍)

在这里插入图片描述

4. 事务操作(注解声明式事务管理)

在这里插入图片描述

5. 事务操作(注解声明式事务管理)

在这里插入图片描述

在这里插入图片描述

6. 事务操作(声明式事务管理参数配置)

6.1 在 service 类上面添加注解@Transactional,在这个注解里面可以配置事务相关参数

在这里插入图片描述

6.2 propagation:事务传播行为

在这里插入图片描述

在这里插入图片描述

6.3 ioslation:事务隔离级别

在这里插入图片描述

在这里插入图片描述

6.4 timeout:超时时间

(1)事务需要在一定时间内进行提交,如果不提交进行回滚
(2)默认值是 -1 ,设置时间以秒单位进行计算

6.5 readOnly:是否只读

(1)读:查询操作,写:添加修改删除操作
(2)readOnly 默认值 false,表示可以查询,可以添加修改删除操作
(3)设置 readOnly 值是 true,设置成 true 之后,只能查询

6.6 rollbackFor:回滚

(1)设置出现哪些异常进行事务回滚

6.7 noRollbackFor:不回滚

(1)设置出现哪些异常不进行事务回滚

7. 事务操作(XML 声明式事务管理)

在这里插入图片描述

在这里插入图片描述

8. 事务操作(完全注解声明式事务管理)

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44063529/article/details/142933709