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

并发事务问题

脏读

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

幻读

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

不可重复读

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

解决事务问题的方法

对事务进行隔离

Read Uncommitted 未提交读(不常用)

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

Read committed 读已提交

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

Repeated Read 可重复读(mysql默认)

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

Serializable 串行化(不常用)

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

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

相关推荐
roman_日积跬步-终至千里13 分钟前
【Java 并发-面试】从线程基础到企业级开发的知识点概况
java·开发语言
云中飞鸿13 分钟前
VS2015安装后,安装QT59,之后安装qt-vsaddin-msvc2015-2.4.3.vsix 文件失败问题!
开发语言·qt
m0_7482331717 分钟前
C与C++:底层编程的六大核心共性
java·开发语言
沐知全栈开发19 分钟前
HTTP Content-Type
开发语言
坊钰22 分钟前
【Rabbit MQ】Rabbit MQ 介绍
java·rabbitmq
一切尽在,你来29 分钟前
C++多线程教程-1.2.2 C++标准库并发组件的设计理念
开发语言·c++
雀啼春30 分钟前
Java中的数据类型
java
80530单词突击赢38 分钟前
C++关联容器深度解析:set/map全攻略
java·数据结构·算法
m0_5613596739 分钟前
代码热更新技术
开发语言·c++·算法