Spring 事务

Spring事务:

实现原理:AOP

切入点、切面、连接点

AOP的实现原理是:动态代理,有jdk动态代理和CGLIB。

1.事务隔离级别:

根据数据库概念可以分为:脏读、读写提交、可重复读、序列化

不同的数据库所支持的隔离级别不同,例如Oracle支持是读写提交和序列化,默认为读写提交,mysql默认的隔离级别为可重复读。

2.事务的传播行为

传播行为就是指在方法之间的掉用。

支持7中传播行为

传播行为

含义

备注

PROPAGATION_REQUIRED

如果存在一个事务,则支持当前事务。如果没有事务则开启。

默认的

PROPAGATION_SUPPORTS

如果存在一个事务,则支持当前事务。如果没有事务则非事务执行。

 

     PROPAGATION_MANDATORY

 

如果存在一个事务,则支持当前事务。如果没有事务则抛出异常。

 

PROPAGATION_REQUIRES_NEW

总是开启一个新事务,如果存在一个事务则将这个事务挂起。

在信用卡场景中,我们往往需要这个传播行为为每一个卡创建独立的事务

PROPAGATION_NOT_SUPPORTED

总是非事务得执行,并挂起任何存在的事务。

 

PROPAGATION_NEVER

总是非事务得执行,如果存在一个活动的事务,则抛出异常。

 

PROPAGATION_NESTED

如果一个活的事务存在,则运行在一个嵌套的事务中;如果没有活动事务,TransactionDefinition. PROPAGATION_REQUIRED属性执行

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值