后端框架(SpringBoot):自动配置的底层执行流程
使用SpringBoot开发后端应用时,我们常会惊叹于它的“开箱即用”:引入一个spring-boot-starter-web
依赖,无需手动配置Tomcat、DispatcherServlet、JSON解析器等组件,启动类加个@SpringBootApplication
注解,就能直接跑起一个Web服务。这种“零配置”体验的核心,是SpringBoot的自动配置(Auto-configuration) 机制——它通过预定义的规则,在启动时自动向Spring容器中注册所需的Bean,并根据环境和配置动态调整。
本节我们将拆解自动配置的底层执行流程:从SpringBoot启动开始,到自动配置类如何被加载、条件如何判断、Bean如何被注册,再到配置文件如何影响最终的Bean实例,揭示“约定大于配置”背后的技术细节。
从启动类说起:@SpringBootApplication
是自动配置的“总开关”
SpringBoot应用的启动类通常长这样:
@SpringBootApplication
public class DemoApplication