Spring Boot事务管理

事务管理

事务进阶

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

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

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

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

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

案例

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

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

相关推荐
利刃大大8 分钟前
【SpringCloud】远程调用OpenFeign && 快速入手 && 参数传递 && 继承方式 && 抽取方式 && 远程部署
后端·spring·spring cloud·openfeign·远程调用
2501_9369603610 分钟前
ROS快速入门杰哥教程1-77残缺版
java·开发语言
小灵吖12 分钟前
LangChain4j 记忆化(ChatMemory)
java·后端
用户10859329934113 分钟前
Java集合框架完全指南
java
冬夜戏雪13 分钟前
Leetcode 颠倒二进制位/二进制求和
java·数据结构·算法
小灵吖16 分钟前
LangChain4j 流式输出
后端
Never_Satisfied27 分钟前
在c#中,获取文件的大小
java·开发语言·c#
蜂蜜黄油呀土豆29 分钟前
浅拷贝与深拷贝:实现与应用解析
java·浅拷贝·深拷贝·对象复制
014-code32 分钟前
Spring Boot 集成 Neo4j 图数据库实战教程
java·数据库·neo4j
时艰.35 分钟前
分布式 ID 服务实战
java·分布式