Spring隔离级

发布时间:
更新时间:
🕒 阅读时间:2 min read 👀 阅读量:Loading...

Spring提供了五种的隔离级别:

  1. DEFAULT(默认):使用底层数据库的默认隔离级别。如果数据库没有特定的设置,通常默认为 READ_COMMITTED
  2. READ_UNCOMMITTED(读未提交):最低的隔离级别,允许事务读取尚未提交的数据,可能会导致脏读、不可重复读和幻读。
  3. READ_COMMITTED(读已提交):仅允许读取已经提交的数据,避免了藏独,但可能会出现不可重复读和幻读的问题、
  4. REPEATABLE_READ(可重复读):确保在同一个事务内的多次读取结果一致,避免脏读和不可重复读,但可能会有幻读问题。
  5. SERIALIZABLE(可串行化):最高的隔离级别,通过强制事务按顺序执行,完全避免脏读、不可重复读和幻读,代价是性能显著下降。

脏读:一个事务读取了另一个尚未提交的事务数据,如果数据回滚则数据是不一致的。

不可重复读:在同意事务内的多次读取,前后数据不一致,因为其他事务修改了该数据并提交。

幻读:在一个事务内的多次查询,查询结果集不同,因为其他事务插入或删除了数据。

Spring隔离级

作者: Mindspark

本文链接: https://oxai.net.cn/posts/dcaef3b0

本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

留言评论

2000年1月1日星期六
00:00:00