Spring事务隔离级别

Spring事务隔离级别共有五种:DEFAULT、READ_UNCOMMITTED、READ_COMMITTED、REPEATBLE_READ、SERIALIZABLE。下面对这五个级别进行简单的介绍。

1 DEFAULT

Spring中默认的事务隔离级别。以连接的数据库的事务隔离级别为准。

2 READ_UNCOMMITTED

Spring事务最弱的隔离级别。一个事务可以读取到另一个事务未提交的事务记录。容易出现脏读、不可重复读、幻读的问题。

3 READ_COMMITTED

一个事务只能读取到已经提交的记录,不能读取未提交的记录。可以解决脏读问题,但仍出现不可重复读、幻读的问题。

4 REPEATBLE_READ

一个事务可以多次从数据库读取某条记录,而且多次读取的那条记录都是一致的、相同的。可以避免脏读、不可重复读的问题,但仍可能出现幻读的问题。

5 SERIALIZABLE

Spring最强的隔离级别,一般不推荐使用。

6 脏读、不可重复读、幻读

(1)脏读

读到了其他事务还没有提交的数据。

(2)不可重复读

对某数据进行读取,两次读取的内容结果不同。因为有其他事务对这个数据同时进行修改或删除。

(3)幻读

事务A根据条件查询得到了N条数据,此时,事务B更改或者增加了M条符合事务A查询条件的数据,当事务A再次进行查询的时候,就有N+M条数据。

相关推荐
鼓掌MVP6 小时前
Java框架的发展历程体现了软件工程思想的持续进化
java·spring·架构
lllsure6 小时前
【Spring Cloud】Spring Cloud Config
java·spring·spring cloud
拽着尾巴的鱼儿6 小时前
fixed-bug:JPA 关联关系的对象序列化循环引用问题
spring·bug·jpa
朝新_8 小时前
【SpringMVC】详解用户登录前后端交互流程:AJAX 异步通信与 Session 机制实战
前端·笔记·spring·ajax·交互·javaee
纪莫14 小时前
技术面:SpringBoot(springboot的类加载和传统的双亲委派有什么区别、如何按顺序实例化Bean)
java·spring·java面试⑧股
曾经的三心草14 小时前
springcloud二-Seata3- Seata各事务模式
后端·spring·spring cloud
Elieal16 小时前
Spring 框架IOC和AOP
java·数据库·spring
Java水解17 小时前
Spring AI Alibaba 入门教程:快速集成大模型到Spring Boot应用
后端·spring
塔能物联运维17 小时前
物联网边缘节点数据缓存优化与一致性保障技术
java·后端·物联网·spring·缓存
初学者,亦行者18 小时前
Rayon并行迭代器:原理、实践与性能优化
java·开发语言·spring·rust