很多项目的启动类看起来只有一个 `main` 方法和一个注解,但它承担的是整个应用装配和启动的入口。真正值得理解的,不是文件有多短,而是背后触发了哪些框架动作。
@SpringBootApplication 包含了什么
这个注解通常整合了配置声明、组件扫描和自动配置能力,所以它看起来只写一个注解,实际是在告诉 Spring Boot 从哪里开始组装应用。
SpringApplication.run 做了哪些关键事
它会准备环境、创建并刷新应用上下文、加载自动配置、触发生命周期回调,最后把整个应用带到可对外提供服务的状态。
为什么启动类位置也重要
因为组件扫描默认会以启动类所在包为起点。如果放错层级,常见后果就是某些配置类、组件或控制器根本没有被扫描到。
结论
启动类不是样板代码,它是 Spring Boot 应用的装配入口,注解组合和包位置都会直接影响程序是否能正确启动。
正文完




