事务管理
概念:
事务管理是对于一系列数据库操作进行管理,这一系列操作要么全部成功,要么全部失败。
特性:
- 原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。
- 一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分失败。在现实中的数据不应该被破坏。
- 隔离性(Isolation):可能有许多事务会同时处理相同的数据,因此每个事务都应该与其他事务隔离开来,防止数据损坏。
- 持久性(Durability):一旦事务完成,无论发生什么系统错误,它的结果都不应该受到影响,这样就能从任何系统崩溃中恢复过来。通常情况下,事务的结果被写到持久化存储器中。
API介绍:
Spring事务管理主要提供了三个接口来完成:
- org.springframework.transaction.PlatformTransactionManager
这是一个事务管理器,可以来选择相关的平台(jdbc hibernate jpa…)- TransactionDefinition
它定义事务的一些相关信息 例如 隔离 传播在这里插入代码片 超时 只读- TransactionStatus
它主要描述事务具体的运行状态
隔离:
——————————————————————————
本博客部分内容参考了amoshcxy与学亮编程手记博主的内容,以下是原文链接:
原文链接:Spring事务管理机制
原文链接:Spring事务管理