Spring事务管理高频面试题(真实面试版).docxVIP

  • 1
  • 0
  • 约3.8千字
  • 约 6页
  • 2026-08-24 发布于河北
  • 举报

Spring事务管理高频面试题(真实面试版).docx

Spring事务管理高频面试题(真实面试版)

一、基础认知类(初级必问)

1.说说你对Spring事务的理解?什么是声明式事务、编程式事务?

参考答案:

Spring事务核心是为Java业务操作提供统一的事务管控能力,保证数据库操作的原子性、一致性、隔离性、持久性,规避多数据库操作出现部分成功、部分失败的数据不一致问题。

主要分为两种实现方式:

1、编程式事务:硬编码方式,手动开启、提交、回滚事务。通过TransactionTemplate或者底层PlatformTransactionManager实现,灵活性高但代码侵入性强,业务代码和事务代码耦合严重,实际项目中极少使用。

2、声明式事务:基于AOP实现,无代码侵入,通过@Transactional注解、XML配置即可开启事务。核心是通过动态代理拦截方法,自动完成事务的开启、提交、回滚,是项目主流用法。

2.@Transactional注解的生效条件是什么?哪些情况会失效?

参考答案:

生效核心条件:Spring容器生成的代理对象调用方法、方法为public修饰、当前类被Spring管理。

常见失效场景:

1、方法不是public修饰,private/protected/default方法事务不生效;

2、类内部自调用(this调用本类带事务的方法),绕过了Spring代理,事务失效;

3、数据库引擎不支持事务,比如MyS

文档评论(0)

1亿VIP精品文档

相关文档