Java面试宝典:Spring专题二
一、介绍下Spring中的事务
1.Spring事务的本质与价值
Spring事务本质是基于AOP的声明式事务封装,通过代理机制在目标方法前后注入事务管理逻辑(开启、提交/回滚)。其核心价值在于:
- 业务解耦:将事务控制从业务代码剥离,通过配置或注解管理(如
@Transactional
)。 - 统一抽象:提供跨数据库的统一事务模型,屏蔽JDBC、JPA等底层差异。
- ACID保障:
- 原子性:依赖
undo log
回滚。 - 持久性:通过
redo log
异步刷盘确保崩溃恢复。 - 隔离性与一致性:由传播行为和隔离级别控制。
2.Spring事务核心实现机制
(1)事务管理器(PlatformTransactionManager
)
- 作用