详细描述SpringBoot执行流程?
时间: 2023-11-27 20:05:16 浏览: 85
springBoot详解
SpringBoot整个启动流程可以分为以下几个步骤:
1. 初始化一个SpringApplication对象。
2. 通过SpringFactoriesLoader查找并加载所有的SpringApplicationRunListeners,通过调用starting()方法通知所有的SpringApplicationRunListeners:应用开始启动了。
3. 打印banner(可以自定义)。
4. 根据是否是web项目,来创建不同的ApplicationContext容器。
5. 创建一系列FailureAnalyzer,(拦截异常)。
6. 初始化ApplicationContext,将准备好的Environment(配置信息)设置给ApplicationContext。
7. 遍历调用所有的ApplicationContextInitializer的initialize()方法来对已经创建好的ApplicationContext进行进一步的处理。
8. 调用SpringApplicationRunListener的contextPrepared()方法,通知所有的监听者:ApplicationContext已经准备完毕。
9. 将所有的bean加载到容器中。
10. 调用SpringApplicationRunListener的contextLoaded()方法,通知所有的监听者:ApplicationContext已经装载完毕。
11. 执行该对象的run方法。
阅读全文