======== 事务管理 ======== 1 事务的四大特性(ACID) 原子性(Atomicity):共生死,要么全部成功,要么全部失败。 一致性(Consistency):在执行事务前后,数据的状态要保持一致。 隔离性(Isolation):执行多个事务,相互不受影响。 _____________________________ |脏读|不可重复读|幻读 ________|____|__________|____ 读未提交| * | * | * 读已提交| | * | * 可重复读| | | * 串 行 化| | | ________|____|__________|____ 持久性(Durability):一旦提交,所作改变永久有效。 2 事务的核心接口 事务定义接口 TransactionDefinition 描述事务的行为、隔离级别、超时等 | |传参 v 事务管理接口 / DataSourceTransactionManager -> JDBC PlatformTransactionManager - HibernateTransactionManager -> Hibernate 管理事务的提交、回滚等 - JpaTransactionManager -> JPA | \ JtaTransactionManager -> JTA |返回 v 事务状态接口 TransactionStatus 表示事务状态 Spring并不直接管理事务,而是通过多种事务管理接口的实现,将具体的事务管理工作委托给如JDBC、Hibernate、JPA、JTA等具体持久化平台所提供的事务管理功能。 3 JDBC事务管理器 在Spring配置中添加Bean: 4 Hibernate事务管理器 在Spring配置中添加Bean: 5 JPA事务管理器 在Spring配置中添加Bean: 6 JTA事务管理器 在Spring配置中添加Bean: