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

负责公司网站的更新和维护网页页面怎么设计

负责公司网站的更新和维护,网页页面怎么设计,快递业务服务网站建设的需求分析,外贸网站制作设计一、背景 Mysql在修改完数据后,默认会自动触发事务Commit提交。 而在我们服务的一个方法里,需要多次修改Mysql记录。 为了保证原子性,我们需要将Mysql设为手动提交,多次修改后再commit提交。 二、Spring事务 1、编程式事务管理…

一、背景

Mysql在修改完数据后,默认会自动触发事务Commit提交。
而在我们服务的一个方法里,需要多次修改Mysql记录。
为了保证原子性,我们需要将Mysql设为手动提交,多次修改后再commit提交。

二、Spring事务

1、编程式事务管理

TransactionTemplate三组件
PlatformTransactionManager事务管理器,用于管理事务的开始、提交和回滚。
TransactionDefinition事务定义,用于定义事务的隔离级别、超时时间、只读等。
TransactionCallback事务回调,用于执行具体的业务逻辑。

使用1

 private TransactionTemplate transactionTemplate;public void MyTransaction() {transactionTemplate.execute((status -> {try {//todoreturn null;} catch (Exception e){status.setRollbackOnly();}return null;}));}

使用2

 @Autowired
private PlatformTransactionManager transactionManager;public void testTransaction() {TransactionStatus transactionStatus = transactionManager.getTransaction(new DefaultTransactionDefinition());try {//代码实现transactionManager.commit(transactionStatus);} catch (Exception e) {transactionManager.rollback(transactionStatus);}
}

2、声明式事务管理

@Transactional

标注位置

  • 标注在方法上,它会在方法执行期间开启一个新的事务。如果方法成功完成,则提交事务。如果方法抛出异常,则回滚事务。
  • 标注在类上时,它会应用于类中的所有公共方法,并且可以通过在方法上指定propagation属性来覆盖类级别的行为。

属性

  • propagation : 事务传播行为
  • isolation :事务隔离级别
  • timeout :定义事务的超时时间(单位为秒)。默认值为-1,表示使用数据库的默认超时时间。
  • readOnly:是否只读。默认值为false,表示允许读写操作。如果设置为true,则只允许读操作。
  • rollbackFor:指定哪些异常需要回滚事务。默认值为RuntimeException和Error。可以指定其他异常,并且可以指定多种异常,例如rollbackFor={SQLException.class,MyException.class}。
@Transactional(propagation = Propagation.REQUIRED)
public void MyMethod {//你的业务代码
}

三、Spring事务传播机制

假如我们的事务方法,修改了某些数据。
但是!!!里面还调用了另一个事务方法,那该怎么处理???
我们是要将当它们当成一个事务?还是两个事务??
Spring提供了七种策略,可以让我们去选择。

Spring提供了七种策略(事务传播机制

事务的传播机制
PROPAGATION_REQUIRED支持当前事务,如果当前没有事务,就新建一个事务。(默认)。
PROPAGATION_SUPPORTS支持当前事务,如果当前没有事务,就以非事务方式执行。
PROPAGATION_MANDATORY支持当前事务,如果当前没有事务,就抛出异常。
PROPAGATION_REQUIRES_NEW新建事务,如果当前存在事务,把当前事务挂起。
PROPAGATION_NOT_SUPPORTED以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。
PROPAGATION_NEVER以非事务方式执行,如果当前存在事务,则抛出异常。
PROPAGATION_NESTED如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则进行与PROPAGATION_REQUIRED类似的操作。
http://www.15wanjia.com/news/194468.html

相关文章:

  • 论坛网站建设视频东莞网站建设求职简历
  • 学习做网站需要多久wordpress手机模板怎么用
  • 网博士自助建站系统下载微信扫码关注登陆wordpress
  • 义乌高端网站设计品牌看免费的视频的软件app
  • 西宁专业做网站公司焦作网站建设哪家专业
  • 自建网站界面设计流程
  • 无锡品牌网站建设介绍营销方向有哪些
  • 自家电脑做网站东莞网络公司 网站建设
  • 投资建设一个网站多少钱wordpress.rar
  • 企业门户网站什么意思常平网站开发
  • 企业网站建设 骆wordpress插件清理
  • 安康企业网站定制wordpress固定链接域名
  • 建设银行网站上交医保做网站图片和文字字体侵权
  • 电商官方网站小程序游戏破解
  • 打开网站iis7高端网站建设 选择磐石网络
  • 做短裙的视频网站湖州建设局新网站
  • 网站建设可行性分析表龙岩网红阙佩琪
  • 罗湖做网站的设计软件有哪些软件免费
  • 建设银行征信中心个人信用查询官方网站软件开发工程师培训学校
  • 杭州公司建设网站wordpress 插件网
  • 网站备案时间会过期吗宿迁盐城网站建设企业
  • 北京手机网站开发电话佛山网站快照优化公司
  • 网站建设 7 24h5 移动 网站 开发
  • jsp网站开发pdf在线网页截图
  • 北京网站建设公司大全凡科手机网站设置问题
  • 做暧暧视频网站重庆企业网站优化
  • 国外游戏网站欣赏为什么网站建设起来搜素不到
  • 中山网站建设哪家便宜开发企业app公司
  • 网站开发进度源码建设沙滩车官方网站
  • org的域名网站全能网站建设完全自学手册