首页 > 其他分享 >springboot的@Transactional回滚

springboot的@Transactional回滚

时间:2023-02-03 17:46:20浏览次数:48  
标签:回滚 springboot RuntimeException Transactional 事务 class

@Transactional 相当于 @Transactional(rollbackFor=RuntimeException.class) ,只对抛出的 RuntimeException 异常,才会事务回滚。

@Transactional 注解只能应用到 public 的方法上。

@Transactional 注解 加在 具体方法(或类)上面 ,而不是接口上面。

希望无论抛出是 RuntimeException ,还是 Exception,事务都要回滚,请使用如下配置。

@Transactional(rollbackFor = { RuntimeException.class, Exception.class })

手动回滚:

// 手动回滚事务
            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

(6条消息) Spring中@Transactional事务回滚_猎人在吃肉的博客-CSDN博客_@transactional默认异常回滚

(6条消息) SpringBoot异常处理回滚事务详解(自动回滚、手动回滚、部分回滚)_墨鸦_Cormorant的博客-CSDN博客_springboot手动回滚

标签:回滚,springboot,RuntimeException,Transactional,事务,class
From: https://www.cnblogs.com/liweimingbk/p/17090011.html

相关文章

  • SpringBoot配置属性之Server
    server配置server.address指定server绑定的地址  server.address= 0.0.0.0 #springboot部署服务器端微服务,server.address配置0.0.0.0,否则当微服务的jar......
  • 多线程事务回滚sqlSession, spring-mybatis 开启事务
    @ResourceSqlContextsqlContext;/***多线程事务.*@paramemployeeDOList*/@OverridepublicvoidsaveThread(List<EmployeeDO>employeeDOList)throwsSQL......
  • springboot整合thymeleaf
    springboot的打包方式默认是jar包的形式,jsp无法在压缩包的形势下进行编译所以springboot引入了一些其他的模板引擎比如thymeleaf表达方式语法用途变量取值${.........
  • 狂神说Springboot笔记
    狂神说SpringBoot视频链接:B站教学视频SpringBoot系列笔记:狂神说SpringBoot01:Hello,World!狂神说SpringBoot02:运行原理初探狂神说SpringBoot03:yaml配置注入狂神......
  • Springboot websocket 的简单使用
    项目结构:引入依赖:"org.springframework.boot:spring-boot-starter-websocket","org.springframework.boot:spring-boot-starter-thymeleaf",启动类:publicclassDem......
  • Linux 配置Tomcat、SpringBoot项目开机自启
    Linux配置Tomcat、SpringBoot项目开机自启#javaenvironment指定java环境exportJAVA_HOME=/home/jdk1.8.0_11exportCLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAV......
  • KingbaseES PLSQL 支持语句级回滚
    KingbaseES默认如果在PLSQL-block执行过程中的任何SQL语句导致错误,都会导致该事务的所有语句都被回滚,而Oracle则是语句级的回滚。KingbaseES为了更好的与Oracle兼容,新......
  • springboot连接rabbitmq报错:Failed to check/redeclare auto-delete queue(s).
    问题springboot项目使用​​spring-boot-starter-amqp​​连接rabbitmq时出现报错:Failedtocheck/redeclareauto-deletequeue(s).思路这类问题是因为没有连接上rabbitmq......
  • SpringBoot发送虚拟请求~
    1、创建一个测试用的TestController@RestControllerpublicclassTestController{@GetMapping("/test")publicStringtest(){System.out.println(......
  • 单元测试的回滚
    一般在单测上加上注解:@Transactional@Rollback就可以对单测的数据库操作回滚。但是如果配了多数据源,对于非主数据源的数据库操作,这种办法不会起作用。这时候需要对​​......