Spring事务

1.事务的四大特性(ACID)

●原子性(Atomicity)
共生死,要么全部成功,要么全部失败!
●一致性(Consistency)
事务在执行前后,数据库中数据要保持一致性状态。(如转账的过程 账户操作后数据必须保持一致)
●隔离性(Isolation)
事务与事务之间的执行应当是相互隔离互不影响的。(多个角色对统一记录进行操作必须保证没有任何干扰) , 当然没有影响是不可能的,为了让影响级别降到最低,通过隔离级别加以限制:

  1. READ_ UNCOMMITTED (读末提交)
    隔离级别最低的一种事务级别。在这种隔离级别下,会引发脏读、不可重复读和幻读。
  2. READ_ COMMITTED (读已提交)
    读到的都是别人提交后的值。这种隔离级别下,会引发不可重复读和幻读,但避免了脏读。
  3. REPEATABLE_ READ (可重复读)
    这种隔离级别下,会引发幻读,但避免了脏读、不可重复读。
  4. SERIALIZABLE (串行化)
    最严格的隔离级别。在Serializable隔离级别下, 所有事务按照次序依次执行。脏读、不可重复读、幻读都不会出现。
    ●持久性(Durability)
    事务提交完毕后,数据库中的数据的改变是永久的。

2.事务接口


Spring并不直接管理事务,而是提供了多种事务管理器,他们将事务管理的职责委托给Hibernate或者JTA等持久化机制所提供的相关平台框架的事务来实现。
Spring事务管理器的接口是org.springframework.transaction.PlatformTransactionManager.通过这个接口,Spring 为各个平台如JDBC、Hibernate 等都提供了对应的事务管理器
但是具体的实现就是各个平台自己的事情了。

posted @   lwx_R  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示