Spring Boot事务管理

事务管理

事务进阶

如果在删除了部门之后,出现了异常。那么就会出现部门被删除之后其中的员工并未被删除。

@Transactional注解,在事务执行完成之后自动提交或者回滚。只需要在执行多次数据修改的事务上加上该注解即可。(比如两次Update或者两次Delete,思考:Update加Select呢?)

只有运行时异常才会被上面的注解回滚

这样设置表示出现所有异常都会回滚

表示A和B两者之间的传播关系

案例

将记录日志的操作放在Finally中,这样无论是否抛出异常都会执行下面的语句

因为默认为Required传播方法,所以这两个事务实际上是同一个事务。所以在第一个事务抛出异常之后直接进行了回滚,不会继续执行insert操作。只需要将事物的propagation参数设置成Requires_New即可。

相关推荐
一 乐7 小时前
海产品销售系统|海鲜商城购物|基于SprinBoot+vue的海鲜商城系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·后端
q***65697 小时前
Spring Boot集成Kafka:最佳实践与详细指南
spring boot·kafka·linq
Victor3567 小时前
Redis(122)Redis的版本更新如何进行?
后端
程序员爱钓鱼7 小时前
Python编程实战 - Python实用工具与库 - 文件批量处理脚本
后端·python·面试
大飞哥~BigFei9 小时前
RabbitMq消费延迟衰减重试实现思路
java·分布式·rabbitmq
鹿衔`9 小时前
Flask入门
后端·python·flask
有趣的野鸭9 小时前
JAVA课程十一次实验课程主要知识点示例
java·前端·数据库
q***071411 小时前
Spring Boot 多数据源解决方案:dynamic-datasource-spring-boot-starter 的奥秘(上)
java·spring boot·后端
郝开11 小时前
Spring Boot 2.7.18(最终 2.x 系列版本)8 - 日志:Log4j2 基本概念;Log4j2 多环境日志配置策略
spring boot·单元测试·log4j
q***498611 小时前
Spring Boot 3.4 正式发布,结构化日志!
java·spring boot·后端