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条数据。

相关推荐
Terra.K4 小时前
Spring AI day1(SSE+AI)
java·人工智能·spring·springai
Wang's Blog7 小时前
Java框架 SpringCloud 快速入门: 路由断言工厂
java·spring·spring cloud
Q26433650239 小时前
【有源码】基于SpringBoot+Vue的博物馆展览与服务一体化平台-java博物馆数字化展品展示与交互平台设计
java·vue.js·spring boot·spring·毕业设计·javaweb·课程设计
大圣编蚕10 小时前
Spring AOP 失效排查:从原理到实战的完整指南
java·后端·spring
EatFan10 小时前
MCP 从概念到落地:Java(Spring AI Alibaba)与 .NET 双栈接入实操对比
java·人工智能·后端·spring·.net·java后端·mcp
vx_Biye_Design11 小时前
springboot小区管理系统68491-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·课程设计·express
liangsheng_g11 小时前
SpringAOP两套代理创建路线设计哲学与开源实践
spring·开源·代码规范
专业程序开发源11 小时前
springboot外卖系统94294-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计
谢亮_vipxieliang21 小时前
Spring Cloud 服务治理入门:注册发现、配置中心、网关限流、熔断降级与分布式一致性方案
分布式·spring·spring cloud
专业程序开发源1 天前
springboot简历管理系统81389-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·spring·php·课程设计