Spring事务管理高频面试题及详细答案.docxVIP

  • 0
  • 0
  • 约4.24千字
  • 约 6页
  • 2026-09-21 发布于河北
  • 举报

Spring事务管理高频面试题及详细答案.docx

Spring事务管理高频面试题及详细答案

1、什么是Spring事务?为什么要用Spring事务?

参考答案:

Spring事务是Spring框架对数据库事务的统一封装管理,核心是保证数据库操作的原子性、一致性、隔离性、持久性,也就是ACID特性。

原生JDBC事务需要手动开启、提交、回滚、关闭连接,代码冗余度极高,且事务管控不灵活。而Spring事务通过声明式、编程式两种方式,简化事务开发,统一事务管理规范,还能适配不同的数据库、ORM框架(MyBatis、JPA等)。

核心使用目的:避免业务操作中出现部分成功、部分失败的数据不一致问题,比如转账、订单创建、库存扣减等核心业务,确保一组数据库操作要么全部成功,要么全部回滚。

2、Spring事务的两种实现方式?各自优缺点?

参考答案:

Spring事务分为编程式事务和声明式事务两种。

(1)编程式事务

手动通过代码控制事务的开启、提交、回滚,核心使用TransactionTemplate或者PlatformTransactionManager实现。

优点:粒度细,可以精准控制某几行代码的事务范围,灵活性极高。

缺点:代码侵入性强,业务代码和事务代码耦合,冗余代码多,实际项目中极少使用。

(2)声明式事务

基于AOP实现,通过注解(@Transactional)或者XML配置实现事务管理,无需手动写事务控制代码。

优点:无代码侵入

文档评论(0)

1亿VIP精品文档

相关文档