iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何解决@Transactional遇到try catch失效的问题
  • 358
分享到

如何解决@Transactional遇到try catch失效的问题

2023-06-29 00:06:14 358人浏览 薄情痞子
摘要

这篇文章给大家分享的是有关如何解决@Transactional遇到try catch失效的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。@Transactional遇到try catch失效Spri

这篇文章给大家分享的是有关如何解决@Transactional遇到try catch失效的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

@Transactional遇到try catch失效

SpringBoot中@Transactional遇到了try catch失效了,需要手动回滚

try {                        user.setExpire(Integer.parseInt(expire));                        userService.updateById(user);                        Host host = hostService.getById(user.getHostId());//查询数据库的host信息                        updateResponse = proxmoxConfig.updateEffectiveTime(user.getUserName(), expire, host.getHostUrlRequest());                    } catch (Exception e) {                        e.printStackTrace();                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();                    }

@Transactional与try..catch同时使用的经验

@transactional 是我们在java 开发中经常用到的注解,帮助我们非常方便快捷的完成事务管理,尤其在批量处理数据的时候,更是重要,最近业务中遇到了这种情况,

批量向数据库导入数据,这就会出现excel表中有的数据类型符合导入要求,有的不符合,当我们导入的时候要么就全部成功的导入,要么就失败都不导入,如果不用事务的话就会出现数据正确的会导入到数据库,不正确的就没导入,造成数据的不一致性,

可我的业务不仅仅是用@transactional 注解完成事务,而且当出现数据不符抛异常的时候还要返回错误的提示,所以我还得结核try...catch 块,问题来了,用try...catch就是捕获异常,然后处理掉,而 @transactional 是要在系统抛异常的时候才能起到事务回滚的作用,

后来我查了一些资料,如下操作:

如何解决@Transactional遇到try catch失效的问题

重点就是TransactionAspectSupport.currentTransactionStatus().setRollbackOnly 这个方法,它会起到异常回滚的作用,这样我就可以在它执行完之后,设置需要返回的自定义的信息

最近又遇到了@transactional 注解不起作用的问题了,这一次的情况是原来我的mysql 数据库默认用的是MyISAM 引擎,而这个存储引擎不支持事务,所以需要对数据库的进行一下操作:在控制台输入  alter table xxx(表名) engine=InnoDB 然后你可以在输入show create table xxx(表名) 来查看是否修改成功

如何解决@Transactional遇到try catch失效的问题

感谢各位的阅读!关于“如何解决@Transactional遇到try catch失效的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: 如何解决@Transactional遇到try catch失效的问题

本文链接: https://www.lsjlt.com/news/321423.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解决@Transactional遇到try catch失效的问题
    这篇文章给大家分享的是有关如何解决@Transactional遇到try catch失效的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。@Transactional遇到try catch失效Spri...
    99+
    2023-06-29
  • @Transactional遇到trycatch失效的问题
    目录@Transactional遇到try catch失效@Transactional与try..catch同时使用的经验@Transactional遇到try catch失效 Sp...
    99+
    2022-11-13
  • Android Java try catch失效问题如何解决
    这篇文章主要介绍了Android Java try catch失效问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Android Java try&n...
    99+
    2023-07-04
  • 如何解决ajax访问遇到Session失效的问题
    这篇文章将为大家详细讲解有关如何解决ajax访问遇到Session失效的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。最近由于一个项目,模块切换为ajax请求数据,当...
    99+
    2022-10-19
  • 解决SpringBoot中使用@Transactional注解遇到的问题
    目录使用@Transactional注解遇到的问题1、不建议在接口上添加@Transactional注解2、@Transactional注解3、默认情况下4、数据库引擎需要支持事务管...
    99+
    2022-11-12
  • 解决try-catch捕获异常信息后Spring事务失效的问题
    一、首先在Spring Boot项目中,手动添加异常方法进行测试 @Transactional(rollbackFor=Exception.class) //表示此方法有异常时触...
    99+
    2022-11-12
  • 如何解决mydumper运行报错遇到缺失libssl.so.1.1问题
    小编给大家分享一下如何解决mydumper运行报错遇到缺失libssl.so.1.1问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一...
    99+
    2022-10-18
  • 如何解决写gulp遇到的ES6问题
    这篇文章给大家分享的是有关如何解决写gulp遇到的ES6问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。前言Gulp.js 是一个自动化构建工具,开发者可以使用它在项目开发过程...
    99+
    2022-10-19
  • 使用@ApiModel遇到的问题如何解决
    这篇文章主要介绍了使用@ApiModel遇到的问题如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇使用@ApiModel遇到的问题如何解决文章都会有所收获,下面我们一起来看看吧。@ApiModel遇到的问...
    99+
    2023-07-02
  • ajax如何解决跨域访问遇到的问题
    这篇文章给大家分享的是有关ajax如何解决跨域访问遇到的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ajax请求一个目标地址为非本域(协议、域名、端口任意一个不同)的web...
    99+
    2022-10-19
  • 如何解决使用ProcessBuilder的遇到的问题
    这篇文章主要介绍如何解决使用ProcessBuilder的遇到的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!使用ProcessBuilder踩到的坑最近使用ProcessBuilder执行命令,命令内容正确,但...
    99+
    2023-06-15
  • 如何解决SpringBoot整合RocketMQ遇到的问题
    本篇内容主要讲解“如何解决SpringBoot整合RocketMQ遇到的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决SpringBoot整合RocketMQ遇到的问题”吧!应用场景...
    99+
    2023-06-20
  • 如何解决springcloud-gateway限流遇到的问题
    本篇内容主要讲解“如何解决springcloud-gateway限流遇到的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决springcloud-gateway限流遇到的问题”吧!场景...
    99+
    2023-06-20
  • 如何解决MySQL使用中遇到的问题
    这篇文章给大家分享的是有关如何解决MySQL使用中遇到的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。sql_mode=only_full_group_by引起group b...
    99+
    2022-10-18
  • 如何解决ajax请求data遇到的问题
    这篇文章将为大家详细讲解有关如何解决ajax请求data遇到的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用jquery,post请求data:那里要使用data...
    99+
    2022-10-19
  • 如何解决使用openpyxl时遇到的问题
    本篇内容主要讲解“如何解决使用openpyxl时遇到的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决使用openpyxl时遇到的问题”吧!最近在用python处理Excel表格是遇到...
    99+
    2023-06-14
  • 如何解决log4j升级log4j2遇到的问题
    这篇文章将为大家详细讲解有关如何解决log4j升级log4j2遇到的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。log4j升级log4j2的问题一、导入包 <!-- log...
    99+
    2023-06-22
  • docker-compose up -d遇到的问题如何解决
    这篇文章主要介绍“docker-compose up -d遇到的问题如何解决”,在日常操作中,相信很多人在docker-compose up -d遇到的问题如何解决问题上存在疑惑,小编查阅了各式资料,...
    99+
    2023-07-05
  • 如何解决PHP header失效的问题?
    在进行网站开发时,我们常常需要使用到PHP中的header()函数,在这篇文章中,我将为您介绍在使用header()函数时可能会出现失效的情况,并提供几种解决方案。一、header()函数失效的原因发送header()函数前已经输出内容在使...
    99+
    2023-05-14
  • 如何解决php header 失效问题
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑如何解决php header 失效问题?PHP Header失效的原因分析及解决方法在PHP中用header("location:test.php")...
    99+
    2021-12-15
    php header 失效
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作