Spring-事务

1.概念

数据库操作中最基本的单元,逻辑上一组操作,要么都成功,要么都失败

2.四个特性

a.原子性:要么都成功,要么都失败

b.一致性:总量不变

c.隔离性:操作互补干涉

d.持久性:一旦操作,影响就产生了

3.场景分析(银行转账)

 事务引出:解决中途异常问题

事务的开启逻辑-利用事务的特性进行回滚

 4.事务管理

a.事务一般添加在service层上

b.在spring进行事务管理操作:编程式事务管理(3使用的说明)跟声明式事务管理(一般使用)

c.声明式事务管理(底层AOP)

(1)基于注解方法

(2)基于xml配置

5.基于注解实现事务

(1)创建事务管理器,因为用的是模板创建,因此class引入该class

 开启事务注解,配置文件中引起名称空间tx

配置中开启事务注解

 service类上面or方法上面加上@Transactional

(2)声明式事务管理参数配置

propagation:事务传播行为

a.事务的7种传播行为

required:方法1没把方法2使用就独立在该事务运行,如果被使用在方法2事务种运行

 required_new:T1跟T2两个相互不影响 

supports:

(3) 隔离级别:因为事务具有隔离性,所以多事务之间不会产生影响,所以不考虑隔离性的问题。

如果没有隔离性,会参数以下问题:

a.脏读:一个未提交的事务读取到别的未提交的事务

b.不可重复读:一个未提交的事务读取到了另一提交事务修改的数据

c.幻读:一个未提交的事务读取到了另一提交事务添加的数据

事务隔离性的操作:

(3).@Transactional概念

a.隔离级别设置:isolation=***

b.超时时间(timeout)的概念:事务操作需要在一定时间,否则回滚;默认-1,以秒为单位

c.readOnly:默认false

d.rollbackFor:设置那些异常可以回滚

e.notRollbackFor:与上相反

6.基于xml实现事务(声明式事务管理)

步骤:配置事务管理器,配置通知,配置切入点和切面

 

 

 7.完全注解开发

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值