Spring源码面试题及详细答案.docxVIP

  • 6
  • 0
  • 约1.21万字
  • 约 12页
  • 2026-04-16 发布于河北
  • 举报

Spring源码面试题及详细答案

一、核心基础(高频必问)

1.说说SpringIOC容器的核心原理?BeanFactory和ApplicationContext的区别?

答案:SpringIOC的核心是“控制反转”和“依赖注入”,本质是将对象的创建、依赖管理交给Spring容器,而非开发者手动new对象,目的是解耦、提高代码可维护性。

核心流程:加载配置(XML/注解)→解析配置生成BeanDefinition(描述Bean的元信息,比如类名、属性、依赖、作用域等)→实例化Bean(根据BeanDefinition创建对象)→依赖注入(将依赖的Bean注入到当前Bean中)→初始化Bean(执行初始化方法)→Bean就绪供使用→容器关闭时销毁Bean。

BeanFactory和ApplicationContext的核心区别(实际面试重点说3点即可,不用堆砌):

1.初始化时机:BeanFactory是“懒加载”,只有调用getBean()时才会实例化Bean;ApplicationContext是“预加载”,容器启动时就会实例化所有单例Bean(除了标注lazy-init=true的)。

2.功能范围:BeanFactory是最基础的容器,只提供Bean的创建、依赖注入核心功能;ApplicationContext继承了BeanFactory,额外提供了

文档评论(0)

1亿VIP精品文档

相关文档