springboot启动过程
Spring Boot的启动过程主要涉及几个核心组件,包括`SpringApplication`、`ApplicationContext`、`BeanDefinition`、`BeanPostProcessor`和`ApplicationRunner`/`CommandLineRunner`。以下是Spring Boot启动的一般步骤:
1. **创建SpringApplication实例**:
启动Spring Boot应用通常从创建`SpringApplication`对象开始。
```java
public static void main(String[] args) {
SpringApplication app = new SpringApplication(MySpringBootApplication.class);
app.run(args);
}
```
2. **运行SpringApplication**:
调用`run`方法,该方法会初始化Spring的环境、创建并配置`ApplicationContext`。
3. **初始化SpringApplicationRunListeners**:
在应用上下文刷新之前,Spring Boot会初始化并通知所有的`ApplicationListener`们。
4. **创建并配置Environment**:
`Environment`用于存储所有的环境属性和命令行参数。
5. **初始化ApplicationContext**:
创建