校招刷题群
高效刷题 迎战校招
校招精选试题
近年面笔经面经群内分享
Java刷题群 前端刷题群 产品运营群
首页 > 项目框架 > Spring之启动过程
题目

Spring容器启动流程是怎样的

解答

1、在创建Spring容器,也就是启动Spring时:

2、⾸先会进⾏扫描,扫描得到所有的BeanDefinition对象,并存在⼀个Map中

3、然后筛选出⾮懒加载的单例BeanDefinition进⾏创建Bean,对于多例Bean不需要在启动过程中去进⾏创建,对于多例Bean会在每次获取Bean时利⽤BeanDefinition去创建

4、利⽤BeanDefinition创建Bean就是Bean的创建⽣命周期,这期间包括了合并BeanDefinition、推断 构造⽅法、实例化、属性填充、初始化前、初始化、初始化后等步骤,其中AOP就是发⽣在初始化 后这⼀步骤中

5、单例Bean创建完了之后,Spring会发布⼀个容器启动事件

6、Spring启动结束

7、在源码中会更复杂,⽐如源码中会提供⼀些模板⽅法,让⼦类来实现,⽐如源码中还涉及到⼀些 BeanFactoryPostProcessor和BeanPostProcessor的注册,Spring的扫描就是通过 BenaFactoryPostProcessor来实现的,依赖注⼊就是通过BeanPostProcessor来实现的

8、在Spring启动过程中还会去处理@Import等注解

C 0条回复 评论

帖子还没人回复快来抢沙发