当前位置: 首页 > news >正文

海丰县建设局官方网站php网站建设招聘

海丰县建设局官方网站,php网站建设招聘,安全网站建设与服务的关系,深圳印刷画册文章目录 说一下Spring的事务传播行为 今天来和大家聊聊spring中使用的事务传播行为, 说一下Spring的事务传播行为 spring事务的传播行为说的是,当多个事务同时存在的时候,spring如何处理这些事务的行为。 ① PROPAGATION_REQUIRED&#xf…

文章目录

    • 说一下Spring的事务传播行为

今天来和大家聊聊spring中使用的事务传播行为,

说一下Spring的事务传播行为

spring事务的传播行为说的是,当多个事务同时存在的时候,spring如何处理这些事务的行为。

① PROPAGATION_REQUIRED默认的事务传播,如果当前没有事务,就创建一个新事务,如果当前存在事务,就加入该事务,该设置是最常用的设置。

② PROPAGATION_SUPPORTS:支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就以非事务执行。

③ PROPAGATION_MANDATORY:支持当前事务,如果当前存在事务,就加入该事务,如果当前不存在事务,就抛出异常。

④ PROPAGATION_REQUIRES_NEW:创建新事务,无论当前存不存在事务,都创建新事务。

⑤ PROPAGATION_NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

⑥ PROPAGATION_NEVER:以非事务方式执行,如果当前存在事务,则抛出异常。

⑦ PROPAGATION_NESTED:如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则按REQUIRED属性执行。

在一个事务执行的过程中,调用另一个事务时候(比如一个service方法调用另一个service方法),这个事务将以何种状态存在,是两个事务共存呢,还是一个事务是另一个事务的子事务,还是一个事务加入另一个事务的子事务呢……利用事务的传播性来解决这个问题。

​ 1、REQUIRED: spring默认的事务的传播性
REQUIRED 表示如果当前存在事务,则加入该事务;如果当前没有事务,则创建一个新的事务。

@Service
public class AccountService {@AutowiredJdbcTemplate jdbcTemplate;@Transactionalpublic void handle1() {jdbcTemplate.update("update user set money = ? where id=?;", 1, 2);}
}
@Service
public class AccountService2 {@AutowiredJdbcTemplate jdbcTemplate;@AutowiredAccountService accountService;public void handle2() {jdbcTemplate.update("update user set money = ? where username=?;", 1, "zhangsan");accountService.handle1();}
}

如果 handle2 方法本身是有事务的,则 handle1 方法就会加入到 handle2 方法所在的事务中,这样两个方法将处于同一个事务中,一起成功或者一起失败(不管是 handle2 还是 handle1 谁抛异常,都会导致整体回滚)。

如果 handle2 方法本身是没有事务的,则 handle1 方法就会自己开启一个新的事务。

2、REQUIRES_NEW
​ REQUIRES_NEW 表示创建一个新的事务,如果当前存在事务,则把当前事务挂起。换言之,不管外部方法是否有事务,REQUIRES_NEW 都会开启自己的事务。

3、NESTED
​ NESTED 表示如果当前存在事务,则创建一个事务作为当前事务的嵌套事务来运行;如果当前没有事务,则该取值等价于 TransactionDefinition.PROPAGATION_REQUIRED。

4、MANDATORY
​ MANDATORY 表示如果当前存在事务,则加入该事务;如果当前没有事务,则抛出异常。

5、SUPPORTS
​ NOT_SUPPORTED 表示以非事务方式运行,如果当前存在事务,则把当前事务挂起。

6、NOT_SUPPORTED
​ NOT_SUPPORTED 表示以非事务方式运行,如果当前存在事务,则把当前事务挂起。

7、NEVER
​ NEVER 表示以非事务方式运行,如果当前存在事务,则抛出异常。

http://www.yayakq.cn/news/319939/

相关文章:

  • asp网站后台制作四海网络网站建设
  • 哪里接单做网站线上推广是做什么的
  • 网站 302重定向 备案wordpress apple
  • 安庆网站建设电话网站地图制作软件
  • 个人网站有哪些站建设路小学查分网站
  • 福州 网站建设 医疗seo报告
  • 自己做的网站本地虚拟上传广州网站建设
  • 前台网站模板建设报名系统
  • 做网站开发需要培训吗传统网站网站
  • 网站建设经费立项报告网页网站设计公司排行榜
  • 我的网站是面向全国的选哪个公司的服务器比较好建网电气有限公司
  • 石家庄桥西网站制作公司网站免费
  • 个人网站起个名字wordpress metro手机主题
  • 网页策划方案模板范文seo排名优化有哪些
  • 网站建设 深路互动实用网站建设知识点
  • 广西北海联友建设网站管理一个完整网站开发需要什么技术
  • 佛山公司网站设计团队网站 建设文档
  • 网站检索功能怎么做呢什么是响应式开发
  • 如何用微信小程序做网站seo排名咨询
  • 东莞网站建设aj工作室如何免费申请公司网站
  • 排名轻松seo 网站推广四川成都住建局官网
  • 怎么样自己建立一个网站网站建设 工商注册
  • asp.net获取网站地址电视台网站建设方案.doc
  • 深圳建筑室内设计网站惠州外贸网站建设公司
  • 苏州外贸网站建设公司价格网站建设颜色注意事项
  • 做一个电商网站南京网站制作公司电话
  • 网站建设作业指导书v5shop微分销系统
  • 关于建设门户网站丹东新区建设发展集团网站
  • 邯郸做wap网站的公司深圳市最新消息
  • 双语版网站怎么做网络营销的基本职能有哪些