Spring Boot事务管理

事务管理

事务进阶

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

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

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

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

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

案例

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

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

相关推荐
江湖中的阿龙7 分钟前
【无标题】
java·开发语言
JavaEdge在掘金8 分钟前
06-LangChain Tool 加载与使用指南:预制工具、SerpAPI、edge-tts、GraphQL
java
snakeshe101010 分钟前
SpringBoot 多人协作平台实战(7):完善登录模块 —— Spring 注解体系与密码加密实践
后端
Amazing530711 分钟前
Redis 7配置的三个隐藏陷阱
后端
NettyBoy11 分钟前
生产 YoungGC 导致的系统化卡顿
java·jvm
聚美智数12 分钟前
食物热量搜索与详情双接口接入实战,轻量化生活服务 API 落地
java·开发语言·生活
Ting-yu13 分钟前
Spring AI Alibaba零基础速成(2) ---- Ollama安装与使用
java·后端·spring·ai
砍材农夫19 分钟前
物联网 基于netty构建mqtt服务协议支持
java·物联网·struts·netty
qq_54702617920 分钟前
SpringBoot + Redis 电商秒杀完整方案
spring boot·redis·后端
凤凰院凶涛QAQ24 分钟前
《C++转Java快速入手系列》String篇:在C++里拼字符串像搬砖,在Java里拼字符串像玩乐高 —— 还是带垃圾回收的那种。
java·开发语言·c++