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

并发事务问题

脏读

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

幻读

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

不可重复读

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

解决事务问题的方法

对事务进行隔离

Read Uncommitted 未提交读(不常用)

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

Read committed 读已提交

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

Repeated Read 可重复读(mysql默认)

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

Serializable 串行化(不常用)

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

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

相关推荐
geovindu1 分钟前
go: Broadcast Pattern
开发语言·后端·设计模式·golang·广播模式
云烟成雨TD4 分钟前
Spring AI 1.x 系列【42】MCP 服务端 Spring Boot 启动器
java·人工智能·spring
sycmancia5 分钟前
Qt——Qt程序打包
开发语言·qt
云烟成雨TD9 分钟前
Spring AI 1.x 系列【38】模型上下文协议(MCP)
java·人工智能·spring
郝学胜-神的一滴9 分钟前
Qt 高级开发 026:QTabWidget御道,从筑基到化境
开发语言·c++·qt·程序人生·软件构建·用户界面
Alson_Code11 分钟前
Spring AI-1.1.0
java·人工智能·后端·spring·ai编程
ANnianStriver12 分钟前
PetLumina 08 — 通知系统与搜索功能修复(广播机制 + 已读状态 + 参数对齐)
java·ai·ai编程·广播机制
Jun62613 分钟前
QT(14)-UBUNTU下QT使用串口
开发语言·qt·ubuntu
Jun62613 分钟前
QT(16)-云端版本管理
开发语言·qt
ggaofeng14 分钟前
试用zeroclaw
java·开发语言