SpringBoot中级篇-事务@Transactional注解无效
最近遇到了事务不回滚的情况,很多方法都加tyr catch,在catch中打印日志。但是方法异常时候,日志打印了事务却没有回滚。
Spring AOP异常捕获原理
被拦截的方法需显式抛出异常,并不能经任何处理,这样AOP代理才能捕获到方法的异常,才能进行回滚,默认情况下AOP只捕获RunTimeException的异常。
简而言之:就是我们用事务注解后,只能在当前@Transactional注解的方法里面try-catch,调用方法中一律不能捕获异常,否则事务还是会无效。
所以@Transactional注解无效解决方案有三:
1.在最外层执行方法中try-catch内throw RunTimeException。
2.在方法上throws异常
3.手动回滚
关注公众号,一起进步,一起成长。
SpringBoot中级篇-事务@Transactional注解无效相关推荐
- 面试一口气说出Spring的声明式事务@Transactional注解的6种失效场景
一.Spring事务管理的两种方式 事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种. 编程式事务:是指在代码中手动的管理事务的提交.回滚 ...
- 事务 Transactional注解
前言 事务:4种事务特性,5种隔离级别,7种传播行为 一.什么是事务? 事务逻辑上的一组操作,组成这组操作的各个逻辑单元,要么一起成功,要么一起失败. 二.事务的特性(4种) 原子性 (atomici ...
- Spring声明式事务@Transactional 注解参数详解
@Transactional注解中常用参数说明 参数名称 功能描述 readOnly 该属性用于设置当前事务是否为只读事务,设置为true表示只读,false则表示可读写,默认值为false.例如:@ ...
- springBoot方法上面添加@Transactional注解与类上面添加@Transactional注解的区别
@Transactionalpublic void updateData(){aService.updateA();//更新A表bService.updateB();//更新B表cService.up ...
- SpringBoot配置类替代@Transactional注解实现事务的控制
package com.example.zcw.config;import org.aspectj.lang.annotation.Aspect; import org.springframework ...
- Spring异步Async和事务Transactional注解
Spring开发中我们我们常常用到@Transaction和@Async,但这2个注解加在一起很多的开发者不敢用,担心事务不生效.下面我们就仔细讲解一下这2个注解同时运用,文章用3个场景讲述它们之间的 ...
- Spring MVC学习总结(18)——SpringMVC事务Transactional注解使用总结
一.事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都进行事物处理 , 例子: @Transactional public class TestServiceBean ...
- @Transactional注解的失效场景
@Transactional注解的失效场景 引言 @Transactional 注解相信大家并不陌生,平时开发中很常用的一个注解,它能保证方法内多个数据库操作要么同时成功.要么同时失败.使用@Tran ...
- Java注解Target、Retention、Inherited、Documented的作用简述,以@Transactional注解为例(处女座总结)
原创博文,欢迎转载,转载时请务必附上博文链接,感谢您的尊重. 前言 通过本篇,你将学会@Target.@Retention.@Inherited.@Documented注解的含义,以及他们的使用场景, ...
- @Transactional注解事务不回滚不起作用无效
@Transactional注解事务不回滚不起作用无效 以下内容均来自http://blog.csdn.net/u011410529/article/details/54287307 转载 这几天在项 ...
最新文章
- 【Python】解决print不能立即打印的问题
- metasploit快速入门(二)收集信息
- SaaS系统给企业带来了哪些优势
- SqlBulkCopy导入大数据
- 利用pgAgent创建定时任务
- dojochina ExtJS视频解压密码
- 贝叶斯方法学习笔记(一)
- 属于计算机网络资源子网的,属于计算机网络的资源子网.pdf
- MPB:北林袁峥嵘组-​16S扩增子分析中常用软件及数据库应用现状
- 有关找共享单车那些事
- c语言程序仪表称重编程,液体原料自动称重配料系统(软件设计)本科毕业设计(论文).doc...
- 简述https的几种加密方式
- arcgis加载项双击没反应
- 打开单片机世界的大门——上位机控制下位机实例详解
- activiti工作流学习(二)
- 迅速提高产品用户体验、交互、界面设计的几个绝妙方法
- Sublimenbsp;Textnbsp;2nbsp;快键健
- ssm毕设项目基于框架的众筹管理系统f5244(java+VUE+Mybatis+Maven+Mysql+sprnig)
- 数学知识 泰勒展开式
- 2023年数据分析职业前景怎么样?
热门文章
- 深入解读Linux进程调度Schedule
- 关于JM8.6中MAX_LIST_SIZE值的选取
- Java的GUI学习
- Java的arrays运用
- spring boot中问题总结
- 统计某个字符串出现的次数
- 高翔视觉SLAM十四讲:第三讲中plotTrajectory.cpp怎么运行
- android 输入支付密码错误,Android 支付宝支付密码输入界面
- dram和nand哪个难生产_终于有人说清楚了什么是DRAM、什么是NAND Flash
- python静态地图_Matplotlib Toolkits:地图绘制工具