Spring事务(二)-@Transactional注解

Spring事务(二)-@Transactional注解

上一节说了Spring的事务配置,其中,声明式事务配置里有5种配置方式,
@Transactional注解应该是最为常用的一种方式了。这一节就说说 @Transactional注解。

@Transactional注解可以放到类名或者方法名上面,
写在类名上面,如下:

@Transactional( propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT, timeout = -1, readOnly = false, rollbackFor = {Exception.class})
@Service
public class UserServiceImpl {
    public void A() {
        //......

    }
}

写在方法名上面,如下:

@Transactional( propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT, timeout = -1, readOnly = false, rollbackFor = {Exception.class})
public void A() {
    //......

}

如果写在类上面,则这个类下面的所有方法都会应用这个注解的属性设置。

下面是 @Transactional注解的各个属性解释:

属性名 说明 propagation 事务的传播行为,默认值为 REQUIRED。
[详情]

isolation 事务的隔离级别,默认值为 DEFAULT。
[详情]

timeout 事务的超时时间,默认值为-1。如果超过该时间限制但事务还没有完成,则自动回滚事务。 readOnly 指定事务是否为只读事务,默认值为 false;如果方法内只有select的操作,没有insert、update、delete的操作,可以设置 read-only 为 true。
[详情]

rollbackFor 指定能够触发事务回滚的异常类型。例如:@Transactional(rollbackFor={RuntimeException.class, Exception.class})。 rollbackForClassName 指定能够触发事务回滚的异常类名。例如:@Transactional(rollbackForClassName={“RuntimeException”,”Exception”})。 noRollbackFor 指定的异常类型,不回滚事务。默认值为{}。例如:@Transactional(noRollbackFor={RuntimeException.class, Exception.class})。 noRollbackForClassName 指定的异常类名,不回滚事务。默认值为{}。例如:@Transactional(noRollbackForClassName={“RuntimeException”,”Exception”})。

Original: https://www.cnblogs.com/ayic/p/16759227.html
Author: Yi00
Title: Spring事务(二)-@Transactional注解

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/684956/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 我写的 Python 代码,同事都说好

    人生苦短,我用 Python。 程序员的追求就是不写代码,早日财务自由。不对,一不小心把实话说出来了,应该是将代码写得简洁,优雅。 Python 程序员的追求则是 Pythonic…

    技术杂谈 2023年6月21日
    098
  • MySQL通配符与正则表达式

    通配符 通配符必须全文匹配时才为真,使用 LIKE关键字 字符 示例 含义 _ “a_b” 任意一个字符”axb”,其中x可以使任意…

    技术杂谈 2023年7月25日
    058
  • Idea Spark项目 打包 与 任务提交

    1 posted @2022-08-23 19:25 学而不思则罔! 阅读(6 ) 评论() 编辑 Original: https://www.cnblogs.com/bajiao…

    技术杂谈 2023年7月11日
    097
  • 爱上WPF,努力才会有希望!

    从WinForm转向WPF开发已经有两个多月了,通过不断深入地学习与运用,现在是越来越爱它了。它实在是太强大了。运用WPF,你不仅可以做Win界面,也可以很快转向Web开发,因为S…

    技术杂谈 2023年5月31日
    090
  • 异或的4种堪称神奇的运用场景

    原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处。 众所周知,编程语言一般都内置了3种位运算符 &(AND)、 |(OR)、 ~(NOT),用来…

    技术杂谈 2023年7月25日
    096
  • VMware 虚拟机图文安装和配置 AlmaLinux OS 8.6 教程

    前言:这是《VMware 虚拟机图文安装和配置 Rocky Linux 8.5 教程》一文的姐妹篇教程,如果你需要阅读它,请点击这里。2020 年,CentOS 宣布:计划未来将重…

    技术杂谈 2023年7月11日
    064
  • 时间序列–Holt-Winters

    Holt-winters 三次指数平滑 原始预测——简单平均——移动平均———加权移动平均 1)单指数平滑法:s(t+1)= ax(t) + (1-a) s(t-1) , a 许更…

    技术杂谈 2023年5月31日
    097
  • 可穿戴产品常用的几款主流的健康传感器盘点

    一 简析 1.简介 健康传感器包括心率传感器,血氧传感器等,该类型传感器在应用十分广泛。梳理,测试和运用这些传感器。为后续的产品做铺垫。 二 产品解析 1.汇顶科技GH30XX系列…

    技术杂谈 2023年5月31日
    092
  • Dijkstra算法求最短路

    例题链接 Dijkstra算法是从一个顶点到其余各顶点的最短路径算法,解决的是有权图中最短路径问题。其主要特点是从起始点开始,采用贪心算法的策略,每次遍历到始点距离最近且未访问过的…

    技术杂谈 2023年6月21日
    089
  • 什么?Android上面跑Linux?

    前言 众所周知,现在程序员因为工作、个人兴趣等对各种系统的需求越来越大,部分人电脑做的还是双系统。其中,比较常见的有各种模拟器、虚拟机在windows上面跑Android、Linu…

    技术杂谈 2023年7月11日
    080
  • 剑指offer计划18( 搜索与回溯算法中等)—java

    1.1、题目1 剑指 Offer 55 – II. 平衡二叉树 1.2、解法 递归和下一面一题的结合版,abs去绝对值判断两边的差,然后递归isBalanced来遍历二…

    技术杂谈 2023年7月25日
    066
  • Visio对齐如何用例图等的属性

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/hxsyl/p/6575706.htmlAuthor: …

    技术杂谈 2023年5月31日
    0105
  • 虚拟机安装Centos7.5详细教程

    (3)选择操作系统Linux,版本为CentOS 7 64 位,点击下一步。 (4)定义虚拟机的名字,并设置虚拟机保存的地址,点击下一步。 (5)设置虚拟机的处理器信息,点击下一步…

    技术杂谈 2023年7月25日
    083
  • 单点登录SSO(Single Sign On)

    token表示按照一定的规则(通用的、官方的,如JWT)生成的字符串(可以包含用户的信息) jwt头部信息 有效载荷,包含用户主体信息 签名哈希,防伪标志 在任意一个模块进行登录,…

    技术杂谈 2023年6月21日
    089
  • 钓鱼邮件

    最近收到的一些 钓鱼邮件,分享一下 备案钓鱼邮件 财务部钓鱼邮件: 补贴页面有二维码 ,扫描后需要输入 银行卡账号&密码 OA邮箱升级钓鱼 这些邮件大多是,为了骗取你的账号…

    技术杂谈 2023年5月31日
    088
  • cocos 防坑总结

    博客园 :当前访问的博文已被密码保护 请输入阅读密码: Original: https://www.cnblogs.com/xiaohuochai/p/10013271.htmlA…

    技术杂谈 2023年5月30日
    085
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球