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 注解在整个启动过程中起到了关键作用:

  • 启动了 自动配置机制,简化了大量手动配置的工作。
  • 启用了 组件扫描,自动发现并注册项目中的所有符合条件的组件。
相关推荐
65岁退休Coder10 分钟前
LangGraph v1.2.9 节点容错策略 & 流式输出 & 持久化记忆管理
后端·python·langchain
元界metalite2 小时前
SpringBoot整合RocketMQ-毒丸消息还要无限重试吗
后端
用户3126874877202 小时前
ConcurrentHashMap 怎么保证线程安全?从分段锁到 CAS+synchronized
java
vipxieliang2 小时前
ValidX vs Apache Commons Validator:功能与性能对比
java·spring boot
SimonKing3 小时前
升级Spring Boot 4后,从 Jackson 2 到 3,到底有哪些变化
java·后端·程序员
YIAN3 小时前
Docker + Nginx 核心原理扫盲:从环境隔离到反向代理,运维面试必考点
后端·docker·面试
万物智能3 小时前
启动链路与分区—【万物智能之开源鸿蒙OpenHarmony系统实战开发系列教程】
后端·架构
寒蝉1283 小时前
一个简单操作是怎么在分布式环境下变复杂的
后端
苏三的开发日记3 小时前
Windows宿主机+VMware CentOS虚拟机 + 同一个Wi-Fi下的其他实体电脑,三者可以互相访问
后端
boooooooom3 小时前
手把手做一个图 RAG 烹饪问答系统:Neo4j + Milvus + LLM 的工程实践
前端·javascript·后端