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

网站规划书500字购物网站有哪些

网站规划书500字,购物网站有哪些,公司想做个自己的网站怎么做的,听小说的网站哪个好Spring事务失效的几种情况及其解决方案 方法权限修饰符不是public Transactional 使用的是 Spring AOP 实现的,而 Spring AOP 是通过动态代理实现的,而 Transactional 在生成代理时会判断,如果方法为非 public 修饰的方法,则不生…

Spring事务失效的几种情况及其解决方案

方法权限修饰符不是public

@Transactional 使用的是 Spring AOP 实现的,而 Spring AOP 是通过动态代理实现的,而 @Transactional 在生成代理时会判断,如果方法为非 public 修饰的方法,则不生成代理对象,这样也就没办法自动回滚事务了,它的部分实现源码如下:

protected TransactionAttribute computeTransactionAttribute(Method method, Class<?> targetClass) {// Don't allow no-public methods as required.// 非 public 方法,设置为 nullif (allowPublicMethodsOnly() && !Modifier.isPublic(method.getModifiers())) {return null;}// 后面代码省略....}

解决方案:

将方法的权限修饰符改为 public 即可

Try/Catch

当程序中出现了 try/catch 代码时,事务不会自动回滚,这是因为 @Transactional 注解在其实现时,需要感知到异常才会自动回滚,而用户自行在代码中加入了 try/catch 之后,@Transactional 就无法感知到异常了,那么也就不能自动回滚事务了。

解决方案:

将异常重新抛出
在这里插入图片描述

Final修饰符

spring 事务底层使用了 aop,也就是通过 jdk 动态代理或者 cglib,帮我们生成了代理类,在代理类中实现的事务功能。但如果某个方法用 final 修饰了,那么在它的代理类中,就无法重写该方法,而添加事务功能。

注意:如果某个方法是 static 的,同样无法通过动态代理,变成事务方法。

解决方案:

不使用final修饰符

同一个类内部调用

在同一个类中的方法直接内部调用时,直接调用了 this 对象的方法,没有使用代理对象的方法,因此会导致事务失效。

解决方案

在该 Service 类中注入自己

此时注入的就是代理类

在该 Service 类中使用 AopContext.currentProxy() 获取当前实例的代理对象。

数据库不支持事务

当我们在程序中添加了 @Transactional,相当于给调用的数据库发送了:开始事务、提交事务、回滚事务的指令,但是如果数据库本身不支持事务,比如 MySQL 中设置了使用 MyISAM 引擎,因为它本身是不支持事务的,这种情况下,即使在程序中添加了 @Transactional 注解,那么依然不会有事务的行为,也就不会执行事务的自动回滚了。

解决方案:

设置 MySQL 的引擎为 InnoDB 就可以解决问题了,因为 InnoDB 是支持事务的

http://www.ds6.com.cn/news/48421.html

相关文章:

  • 下载网站模板后本地的网站会自动做跳转微信广告投放收费标准
  • 做网站的背景像素怎么样推广自己的店铺和产品
  • 网站建设企业资质地推
  • 精美合同网站建设百度下载安装2021
  • 域名通过了才可以做网站吗google框架三件套
  • 响应式网页设计总结账号seo是什么
  • 什么网站是php做的模板下载网站
  • 上海公司黄页网站百度推广的优化软件
  • 米拓建站免费模板百度收录网站需要多久
  • 网站开发 定制域名查询138ip
  • 印刷网站建设 优帮云百度搜索网址大全
  • 企业网站建设包含哪些内容南京seo圈子
  • 做网站的平台2022世界足球排行榜
  • 北京市住房和建设委员会门户网站哪里可以做
  • 建一个网站怎么赚钱百度手机助手官网
  • 做网站商城如何优化线上营销的优势
  • 做阿里国际网站要收费吗优化营商环境发言稿
  • wordpress生成网站模版最近的新闻事件
  • 2019做网站的出路南宁百度seo软件
  • 做视频包的网站n127网推广
  • 2018年做淘宝客网站还能挣钱吗广东深圳疫情最新情况
  • 免费网站空间有哪些百度营销推广
  • 吉安做网站的公司安徽seo网络推广
  • 在自己的电脑建设空间网站谷歌google下载
  • 公司做网站的费用怎么账务处理天津seo推广软件
  • 郴州网站建设较好的公司网站推广营销运营方式
  • 国外网站设计欣赏seo优化软件购买
  • 响应式网站与自适应seo大牛
  • 上海门户网站建设口碑推广
  • 汽车之家网址seo外链发布技巧