springboot启动原理
时间: 2023-07-03 16:05:55 浏览: 100
Spring Boot 启动原理大致可以分为以下几个步骤:
1. 加载启动类:Spring Boot 会先加载启动类,也就是标注了 `@SpringBootApplication` 注解的类,该注解包含了 `@Configuration`、`@EnableAutoConfiguration` 和 `@ComponentScan` 注解。
2. 执行自动配置:Spring Boot 会执行 `@EnableAutoConfiguration` 注解,该注解会开启自动配置功能,自动配置会根据所引入的依赖和项目中已有的配置来决定最终的配置。
3. 加载配置文件:Spring Boot 会加载 `application.properties` 或 `application.yml` 文件中的配置信息,这些配置信息会被转换为 `Spring Environment` 中的属性。
4. 创建 Spring 容器:Spring Boot 会通过 `SpringApplication` 类创建一个 Spring 容器,在创建容器的过程中,会将上述步骤中收集到的配置信息放入容器中。
5. 执行 `ApplicationContextInitializer` 和 `SpringApplicationRunListener`:Spring Boot 会在容器创建完成后,执行 `ApplicationContextInitializer` 和 `SpringApplicationRunListener` 中的代码,这些代码可以用于对容器进行进一步的配置和处理。
6. 启动容器:Spring Boot 会启动容器,启动过程中会扫描所有的 Bean,然后对其进行实例化、初始化并注入依赖。
7. 运行应用程序:最后,Spring Boot 会运行应用程序,将 HTTP 请求等事件交给应用程序处理。
阅读全文