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

并发事务问题

脏读

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

幻读

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

不可重复读

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

解决事务问题的方法

对事务进行隔离

Read Uncommitted 未提交读(不常用)

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

Read committed 读已提交

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

Repeated Read 可重复读(mysql默认)

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

Serializable 串行化(不常用)

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

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

相关推荐
zhougl9967 分钟前
Redis 防止丢数据
java·redis·mybatis
烟话611 分钟前
C# 内存机制详解:值类型、引用类型与 String 的不可变性
java·jvm·c#
QH1392923188014 分钟前
Rohde & Schwarz ZNA43矢量网络分析仪的使用方法
开发语言·php
Javatutouhouduan18 分钟前
深入学习JVM底层原理:JVM源码剖析与实例详解
java·jvm·java虚拟机·java面试·后端开发·java程序员·java性能优化
沐知全栈开发18 分钟前
SVG 实例
开发语言
小同志0020 分钟前
⽅法注解 @Bean
java·spring·bean·maven
geovindu21 分钟前
go: Iterator Pattern
开发语言·设计模式·golang·迭代器模式
Ting.~23 分钟前
GIT详解
java·笔记·git
他是龙55124 分钟前
70:Python安全 & SSTI模板注入 & Jinja2引擎 & 利用绕过 & 工具实战
开发语言·python·安全
人道领域29 分钟前
【LeetCode刷题日记】239.滑动窗口最大值:单调队列解法(困难)
java·开发语言·算法