首页 > 学院 > 开发设计 > 正文

Spring 事务

2019-11-08 20:48:20
字体:
来源:转载
供稿:网友

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属性执行

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表