Spring Boot IoC 容器初始化过程

1. 加载 ApplicationContextInializer & ApplicationListener

2. 初始化环境 ConfigurableEnvironment & 加载配置文件

3. 构建应用上下文 ApplicationContext

4. 通过 ApplicationListener 注册 BeanFactoryPostProcessor

5. 初始化 BeanFactoryPostProcessor 到 IoC 容器

6. 通过 BeanFactoryPostProcessor: ConfigurationClassParser 扫描注册所有组件(包括: @Bean @Configuration, @Imports) 到  IoC 容器

7. 注册拦截 bean 创建的 bean processors

8. createEmbededServletContainer: 通过内置的 Servlet 容器工厂创建内置 Servlet 容器

9. 初始化所有未初始化的单例 BeanDefinitions 到 Ioc 容器

10. 启动内置 Servlet 容器

11. 完成

原文地址:https://www.cnblogs.com/xiluhua/p/9689058.html