其他
热门题目
- Spring 的 BeanFactory 是什么?
- Spring 的 FactoryBean 是什么?
- Spring 的 ObjectFactory 是什么?
- Spring 的 ApplicationContext 是什么?
- Spring 的启动过程?(了解)
见招拆招
1、Spring 的 BeanFactory 是什么?
BeanFactory 其实就是 IOC 容器实现,所有的 bean 都在里面进行创建和管理这些 Bean 的生命周期。这里有个需要注意的地方就是 Bean 在 BeanFactory 中是延迟初始化的,当有地方需要 Bean 时,才会进行对应的初始化工作。还有就是它很容易和 FactoryBean 搞混淆嘛,两者其实是不同的概念。
(埋一个钩子)
2、Spring 的 FactoryBean 是什么?
对于 FactoryBean ,在平时的开发中,其实我也没有用过。只是了解它是 Spring 提供的一个接口,实现类可以通过自定义的逻辑去创建复杂的 Bean 实例。
3、Spring 的 ObjectFactory 是什么?
这个呢,我只是了解,没有具体的使用过,只知道它是一个 Spring 提供的接口,主要用于延迟 Bean 的获取,基于这个特性也可以解决循环依赖的问题。
(用力挖坑)
4、Spring 的 ApplicationContext 是什么?
中文翻译过来的话就是应用上下文嘛,它其实也是一个接口,不过这个接口整合了很多的其他接口,比如 BeanFactory 等等。通过它的实现类实例呢,可以获取当前 Spring 执行上下文的一些信息,比如说可以获取指定的 bean 啊,一些操作。
5、Spring 的启动过程?(了解)
具体过程还是比较复杂的,我这里简单的说一下吧:
- Spring 程序在启动的时候,会读取配置文件,加载相关的配置
- 之后会进行容器的初始化操作,比如 ApplicationContext,BeanFactory 这些
- 然后呢就是读取 bean 相关的配置文件中的 bean 的元信息了
- 读取完毕后,就开始 bean 的实例化操作了,就是走 bean 的生命周期 嘛
- 当然,启动的过程中还会发布一些事件,比如容器启动事件什么的
- 最后,完成容器的启动工作
(不需要太细节,太细节也记不住,看面试技巧的相关文章,教你怎么绕开一些自己不擅长的领域)
总结
Spring 八股文在这里基本上就完结了。不需要去看源码什么的,没必要,中大厂比较看重中间件原理的理解和使用。不要在这里恋战。
2025/01/09
writeBy kaiven