先来了解一下@Transactional注解事务的特性吧,可以更好排查问题

1、service类标签(一般不建议在接口上)上添加@Transactional,可以将整个类纳入spring事务管理,在每个业务方法执行时都会开启一个事务,不过这些事务采用相同的管理方式。

2、@Transactional 注解只能应用到 public 可见度的方法上。 如果应用在protected、private或者 package可见度的方法上,也不会报错,不过事务设置不会起作用。

3、默认情况下,Spring会对unchecked异常进行事务回滚;如果是checked异常则不回滚。 
辣么什么是checked异常,什么是unchecked异常

java里面将派生于Error或者RuntimeException(比如空指针,1/0)的异常称为unchecked异常,其他继承自java.lang.Exception得异常统称为Checked Exception,如IOException、TimeoutException等

辣么再通俗一点:你写代码出现的空指针等异常,会被回滚,文件读写,网络出问题,spring就没法回滚了。然后我教大家怎么记这个,因为很多同学容易弄混,你写代码的时候有些IOException我们的编译器是能够检测到的,说以叫checked异常,你写代码的时候空指针等死检测不到的,所以叫unchecked异常。这样是不是好记一些啦

@transactional注解失效情况相关推荐

  1. @Transactional注解什么情况会失效?

    1.@Transactional 应用在非 public 修饰的方法上 如果Transactional注解应用在非public 修饰的方法上,Transactional将会失效. 之所以会失效是因为在 ...

  2. 一口气说出 6种 @Transactional 注解失效场景

    引言 昨天公众号粉丝咨询了一个问题,说自己之前面试被问@Transactional注解哪些场景下会失效,一时语塞致使面试失败.所以今天简单的和大家分享一下@Transactional相关的知识. @T ...

  3. @getmapping注解的作用_@Transactional注解失效了?你遇到的是这6种场景吧!

    引言 昨天公众号粉丝咨询了一个问题,说自己之前面试被问@Transactional注解哪些场景下会失效,一时语塞致使面试失败.所以今天简单的和大家分享一下@Transactional相关的知识. @T ...

  4. Spring 事务方法与非事务方法相互调用 @Transactional 注解失效不回滚?

    写这篇文章的初衷呢就是最近遇到了一个Spring事务的大坑.与其说是坑,还不如说是自己事务这块儿太薄弱导致的(自嘲下). 项目环境 Spring Boot 下面开始问题描述,发生的过程有点长,想直接看 ...

  5. @Transactional注解在什么情况下失效?

    引言 1.@Transactional 注解相信大家并不陌生,平时开发中很常用的一个注解,它能保证方法内多个数据库操作要么同时成功.要么同时失败. 2.使用@Transactional注解时需要注意许 ...

  6. 一口气说出 6 种 @Transactional 注解的失效场景

    一.事务 事务管理在系统开发中是不可缺少的一部分,Spring提供了很好事务管理机制,主要分为编程式事务和声明式事务两种. 编程式事务:是指在代码中手动的管理事务的提交.回滚等操作,代码侵入性比较强, ...

  7. @getmapping注解的作用_一口气说出6种,@Transactional注解的失效场景

    作者:程序员内点事 引言 昨天公众号粉丝咨询了一个问题,说自己之前面试被问@Transactional注解哪些场景下会失效,一时语塞致使面试失败.所以今天简单的和大家分享一下@Transactiona ...

  8. 面试官让我说出2种@Transactional注解的失效场景,我一口气给他说了六种

    引言 @Transactional 注解相信大家并不陌生,平时开发中很常用的一个注解,它能保证方法内多个数据库操作要么同时成功.要么同时失败.使用**@Transactional注解时需要注意许多的细 ...

  9. @Transactional 注解的失效场景

    作者:码农开花 链接:https://zhuanlan.zhihu.com/p/351260443 来源:知乎 著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 引言 有人咨询了一 ...

最新文章

  1. 显示域用户登录的ip或计算机名,如何在使用PowerShell脚本或者VBS脚本,查看域内正在登录的域用户名、主机名和主机IP地址...
  2. vue入门基础篇笔记1
  3. svn版本信息自动更新到源代码
  4. matlab hist函数_算法工匠MATLAB专训营:Matlab绘图,小试牛刀
  5. iscsi存储的简单配置
  6. javaSE各阶段练习题--面向对象-static-String-StringBuilder
  7. springboot集成springDataJpa
  8. 【Time系列一】datetime的妙用
  9. 来自后端的突袭? --开包即食的教程带你浅尝最新开源的C# Web引擎 Blazor
  10. SEO笔记—网页结构优化(四)
  11. C++primer 第 2 章 变量和基本类型
  12. Python使用标准库urllib模拟浏览器爬取网页内容
  13. Hadoop生态圈-Flume的组件之sink处理器
  14. 勤能补拙 VS 思考补拙
  15. Atitit 关于微服务的思考与理解 attilax总结 1.1. 架构的历史 微服务发展历史 Web》soa》msa 1 1.2. 微服务最大特点 独立部署 1 2. 微服务的优点 1 2.1.
  16. 嵌入式系统开发笔记33:关于“人生苦短,我学Python”这句话的由来
  17. spring boot 核心配置文件是什么?
  18. 学习ubuntu基础看完这一篇就够了,我是貔貅带你打开ubuntu的大门
  19. 操作系统七种寻址方式
  20. java微信获取素材列表_微信公众号开发之获取素材列表并保存

热门文章

  1. 【转】logback 常用配置详解(序)logback 简介
  2. C#:委托基础与事件
  3. Linux下读写芯片的I2C寄存器
  4. Jm86中的encode_one_macroblock注释
  5. 【图像处理】——Python实现two_pass方法来进行连通域的提取
  6. SOLIDWORKS——参数化建模
  7. Halcon例程(基于3D形状匹配识别方法)详解 —— create_shape_model_3d_lowest_model_level.hdev
  8. 出现23.97帧率的原因
  9. mysql多表查询语句_mysql查询语句 和 多表关联查询 以及 子查询
  10. J storm战队成员_DOTA2J.Storm战队介绍-DOTA2ESL孟买站预选赛J.Storm战队介绍_牛游戏网攻略...