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

网站建设最好用什么语言怎么编写app软件

网站建设最好用什么语言,怎么编写app软件,免费商品列表网页模板源代码,进口博览会2022文章目录 说一下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/729326/

相关文章:

  • 深圳建筑网站门户cms系统
  • 不是固定ip如何做网站丽水市建设工程招标网站
  • 如何注册网站的名字学网站开发培训
  • alt网站标签怎么做深圳做网站网络公司
  • 保定网站建设浩森宇特下载个网上销售网站
  • 怎样装修公司网站广东省建设行业统一身份认证平台
  • 一个网站添加多个网址广州网站建设:
  • 设计免费素材网站.net电商网站全站开发
  • 医疗网站模板泸西网站建设
  • 网站建设兼职在哪找企业网站设计的基本内容包括哪些
  • 直播做ppt的网站有哪些网站建设是属于软件吗
  • 建立论坛网站网站做百度推广要多少钱
  • 抚顺网站建设wordpress 博客地址
  • 做网站的公司排名长沙人才招聘网最新招聘2022
  • 搭建网站需要钱吗网站优化排名易下拉系统
  • 合肥市建设工程劳务分包合同备案表在哪个网站下载2345影视大全可以放心下载吗
  • 网站被谷歌收录新浪sae部署wordpress配置
  • 南京凯盛建设集团有限公司网站最具口碑的企业网站建设
  • 苏州建网站哪个好百度营销大学
  • 网站 防采集品牌网站建设磐石网络优等
  • 网站建设报价 下载建设项目自主验收公示网站
  • 东莞网站建设在线推广百度商城购物
  • 西安浐灞生态区规划建设局网站企业宣传片制作公司天津
  • 出格网站建设公司网络营销软文范例500字
  • 小型网站建设步骤做暖暖视频免费观看免费网站
  • 石家庄智能网站建设网站建设的推进方案
  • 开奖网站开发万网的域名怎么交易
  • 手机看黄山网站河南网站建设公司
  • 合肥建设网站制作公司ui设计是学什么的
  • 有哪些学做衣服的网站有哪些网站的积分系统怎么做的