Java面试题:并发事务问题和事务隔离级别

并发事务问题

脏读

一个事务读到了另一个事务还没有提交的数据

幻读

按条件查询数据时发现没有数据,但插入时数据存在,就像出现了幻觉

不可重复读

同一个事务先后读取同一条记录,但两次读取的数据不同,称之为不可重复读

解决事务问题的方法

对事务进行隔离

Read Uncommitted 未提交读(不常用)

存在问题:脏读,幻读,不可重复读

Read committed 读已提交

存在问题:幻读,不可重复读 解决:脏读

Repeated Read 可重复读(mysql默认)

存在问题:幻读 解决:脏读,不可重复读

Serializable 串行化(不常用)

所有事务必须串行执行,在上一个事务完成后才能执行下一个事务

解决:脏读 幻读 不可重复读

相关推荐
掉鱼的猫4 分钟前
把 OpenAPI 接入 Agent Harness:零代码让 Agent 听懂你的 REST API
java·llm·agent
lzhcoder8 分钟前
Spring Boot 集成 Kafka:先跑通 Demo,再避开那 80% 的人踩过的坑
java·kafka
plainGeekDev32 分钟前
ProGuard → R8
android·java·kotlin
带刺的坐椅43 分钟前
把 OpenAPI 接入 Agent Harness:零代码让 Agent 听懂你的 REST API
java·ai·llm·agent·solon·restapi·openapi
༄沐࿆风࿆࿆1 小时前
JavaScript函数完全指南:从基础语法到闭包原理与应用实战
开发语言·javascript
Geek-Chow1 小时前
微服务认证与授权:01 — 概念
java·前端·数据库
KobeSacre1 小时前
DelayQueue 源码
java·开发语言
Wang's Blog1 小时前
JavaWeb快速入门: Filter与Listener核心详解
java·filter·listener
han_hanker1 小时前
重新认识枚举enum
开发语言
zfoo-framework2 小时前
mongodb性能调优 1.从慢查询分析索引 2.掌握索引最左匹配原则!!!
java