请描述 SpringBoot 应用的启动底层流程。
考察说明
考察对 SpringBoot 自动配置、Spring 容器初始化与内嵌 Web 服务器启动机制的理解
回答思路
- 说明 main 方法调用 SpringApplication.run 的入口
- 覆盖 SpringApplication 初始化阶段(推断应用类型、加载监听器等)
- 描述 Spring 容器的创建、Bean 定义加载与刷新(refresh)流程
- 说明自动配置原理(@EnableAutoConfiguration 与 spring.factories 或 AutoConfiguration.imports)
- 解释内嵌 Web 服务器(Tomcat 等)的启动时机