脏读、不可重复读与幻读和spring事务传播方式

xiaoxiao2021-02-28  145

脏读、不可重复读和幻读是数据库事务可能出现的问题,理解和解决这三类问题应该结合数据库事务隔离级别来学习和分析。

数据库事务的隔离级别有4个,由低到高依次为Read uncommittedRead committedRepeatable readSerializable

√: 可能出现    ×: 不会出现

脏读不可重复读幻读Read uncommittedRead committed×Repeatable read××Serializable×××

脏读:是指一个事务读取到了另一个事务未提交的数据。

不可重复读:指一个事务读取时另一个事务可以修改数据。

幻读:一个事务读取时另一个事务insert操作。

这三类问题的解决方式就是依次提高数据库的事务隔离级别。

另外,一组相关概念:spring七种事务传播方式。

spring事务的七种传播方式主要是针对于方法中间传递时的事务机制,

例如:以方法B为当前主体 ,方法A调用了方法B ,作为方法B你看方法A

(1)PROPAGATION_REQUIRED(默认):如果A有事务则B加入A事务,如果A没有事务则新B建一个事务;

转载请注明原文地址: https://www.6miu.com/read-18805.html

最新回复(0)