【从入口开始】

点进去-->

点进去-->

再点进去-->

【初始化工作】
到这儿就是SpringBoot的启动准备工作了,写几个关键的注释:
//当前项目的类型
this.webApplicationType = WebApplicationType.deduceFromClasspath();
//设置初始化器
this.setInitializers(this.getSpringFactoriesInstances(ApplicationContextInitializer.class));
//设置监听器
this.setListeners(this.getSpringFactoriesInstances(ApplicationListener.class));
//根据应用推断程序的入口类
this.mainApplicationClass = this.deduceMainApplicationClass();
1、如何设置初始化器
初始化的过程根据方法名可以猜到是在加载 spring.factories 的配置
2、点击去打断点验证一下

果然它去加载了叫 spring.factories 的配置文件
3、设置监听器,通过源码可以发现,也是去加载的spring.factoies 配置文件
【备注】
项目基于SpringBoot2.1.6,下篇学习SpringBoot启动的过程
本文深入探讨SpringBoot的启动过程,解析从入口开始的初始化工作,包括如何设置初始化器、加载spring.factories配置、设置监听器及推断主入口类等关键步骤。
902

被折叠的 条评论
为什么被折叠?



