SpringBoot的启动流程是怎样的?

  1. 启动入口

    Spring Boot 通过 SpringApplication.run() 启动应用,这是整个启动流程的入口。

  2. 创建应用上下文

    Spring Boot 创建应用上下文,并通过 AnnotationConfigServletWebServerApplicationContext 初始化 Web 环境。

  3. 启动内嵌 Web 服务器

    refreshContext() 阶段,Spring Boot 启动内嵌的 Web 服务器,默认使用 Tomcat

  4. 自动配置 Web 组件

    Spring Boot 通过 @EnableAutoConfiguration 自动配置 Web 组件,如 DispatcherServlet,极大地简化了配置过程。

  5. 请求处理
    DispatcherServlet 负责接收并处理 HTTP 请求,随后将请求分发到相应的控制器。

关键注解 @SpringBootApplication

@SpringBootApplication 注解在整个启动过程中起到了关键作用:

  • 启动了 自动配置机制,简化了大量手动配置的工作。
  • 启用了 组件扫描,自动发现并注册项目中的所有符合条件的组件。
相关推荐
不修×蝙蝠4 分钟前
SpringBoot(一)--搭建架构5种方法
java·spring boot·架构·配置·搭建
冲鸭ONE1 小时前
for循环优化方式有哪些?
后端·性能优化
兮动人1 小时前
DBeaver连接OceanBase数据库
后端
FreemanGordon1 小时前
Java volatile 关键字
java
北京_宏哥1 小时前
《手把手教你》系列基础篇(九十三)-java+ selenium自动化测试-框架设计基础-POM设计模式实现-上篇(详解教程)
java·前端·selenium
北京_宏哥1 小时前
《手把手教你》系列基础篇(九十二)-java+ selenium自动化测试-框架设计基础-POM设计模式简介(详解教程)
java·selenium·前端工程化
刘鹏3781 小时前
深入浅出Java中的CAS:原理、源码与实战应用
后端
当归10241 小时前
微服务与消息队列RabbitMQ
java·微服务
Lx3521 小时前
《从头开始学java,一天一个知识点》之:循环结构:for与while循环的使用场景
java·后端
fliter1 小时前
RKE1、K3S、RKE2 三大 Kubernetes 发行版的比较
后端