事务的四个特点

1.原子性  一组事务要么都发生,要么都不发生

2.一致性  事务前后数据的完整性要保持一致

3.隔离性 多个事务并发的访问数据库时,一个用户的事务不能被其他用户的事务干扰,多个并发事务之间

数据要相互隔离

4.持久性 一个事务一旦被提交,它对数据库中数据的改变就是永久性的,就算数据库发生故障也不会该对其有影响


如果不考虑事务的隔离性,会出现以下问题:

  • 脏读:指一个线程中的事务读取到了另外一个线程中未提交的数据。
  • 不可重复读(虚读):指一个线程中的事务读取到了另外一个线程中提交的update的数据。
  • 幻读:指一个线程中的事务读取到了另外一个线程中提交的insert的数据。

Sping事务管理高层抽象主要包括三个接口

Platform TransactionManager    事务管理器

TransactionDefintion  事务定义信息(隔离,传播,超时,只读)

TransactionStatus 事务运行的状态


Spring为不同的持久化框架提供了不同的,Platform TransactionManager,接口实现

从零双排java之事务

事务的隔离级别

从零双排java之事务

Mysql默认采用Repeatable_read隔离级别

Oracle默认采用的Read_committed隔离级别

从零双排java之事务

主要记:1 , 4 , 7 三种


相关文章:

  • 2022-01-15
  • 2022-12-23
  • 2022-12-23
  • 2021-05-10
  • 2021-09-05
  • 2021-07-02
  • 2021-12-19
  • 2021-11-23
猜你喜欢
  • 2021-11-15
  • 2021-04-08
  • 2021-06-28
  • 2021-09-09
  • 2021-09-30
  • 2022-01-05
  • 2021-12-07
相关资源
相似解决方案