当前位置: 首页 > news >正文

Spring 中事务的实现

目录

  • 1、事务
  • 2、声明式自动提交事务
    • 2.1 @Transactional

1、事务

事务的定义:将一组操作封装成一个执行单元,要么全部成功,要么全部失败。
比如:A 转账给 B 100元,分为两个操作,第一步:A 的账户 - 100元,第二步:B 的账户 + 100元。如果没有事务,第一步执行成功,而第二步执行失败,那么 A 账户的100元就平白无故消失了,因此需要使用事务来解决这个问题,要不全部成功,要不全部失败。

2、声明式自动提交事务

Spring 中的事务操作分为两类:手动操作事务和声明式自动提交事务。常用的是声明式自动提交事务,只需要在方法上添加 @Transactional 注解即可实现,无需手动开启事务和提交事务,进入方法时自动开启事务,方法执行完会自动提交事务,如果中途发生了没有处理的异常会自动回滚事务。注意 @Transactional 在异常被捕获的情况下,不会进行事务回滚。

2.1 @Transactional

  1. @Transactional 可以用来修饰方法或类:
    修饰方法时:只能应用到 public 方法上,否则不生效。
    修饰类时:表明该注解对该类中所有的 public 方法都生效。
  2. @Transactional 参数说明:

在这里插入图片描述

相关文章:

  • MySQL索引详解
  • 从零到一:如何系统化封装并发布 React 组件库到 npm
  • Vue 框架使用难点与易错点剖析:避开陷阱,提升开发效率
  • wow-rag学习|手搓RAG
  • Spring Boot
  • C语言 第四章 数组(2)
  • VMware 17 3389远程接入会出现无响应
  • 系统设计面试总结:5、加密算法的应用场景、哈希算法(MD、SHA、BCrypt)、对称加密(DES和3DES、AES)、非对称加密(RSA、DSA)
  • python系列之运算符
  • 重要!!! 改进 梯度方差(Fisher 信息近似) 指数移动平均
  • MATLAB代码开发实战:从入门到高效应用
  • 使用AI一步一步实现若依前端(10)
  • Java基础语法精讲:类型转换、常用运算符与用户输入处理引言
  • 苍穹外卖实战附源码-DAY1
  • 掌握C++内联与异常:构建高效且健壮的应用程序
  • 蓝桥杯备考:数据结构堆之序列合并
  • 基于javaweb的SpringBoot农资商城购物商城系统设计与实现(源码+文档+部署讲解)
  • Linux第19节 --- 用户缓冲区和文件系统
  • Git 的基本概念和使用方式(附有思维导图)
  • 数1的个数(信息学奥赛一本通-1095)
  • 国铁集团去年收入12830亿元增3%,全年铁路运输利润总额创新高
  • “80后”商洛市委副书记、市政府党组副书记赵孝任商洛市副市长
  • 金科服务:大股东博裕资本提出无条件强制性现金要约收购,总代价约17.86亿港元
  • 看展览|建造上海:1949年以来的建筑、城市与文化
  • 保利发展去年净利润约50亿元,在手现金1342亿元
  • 我国成功发射卫星互联网低轨卫星