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

  • 启动了 自动配置机制,简化了大量手动配置的工作。
  • 启用了 组件扫描,自动发现并注册项目中的所有符合条件的组件。
相关推荐
Moment15 小时前
我做了一套前端也能学懂的 AI Agent 系列,从 Prompt 一路讲到多 Agent 😍😍😍
前端·后端·面试
小锋java123415 小时前
分享一套锋哥原创的基于LangChain4j的RAG医疗健康知识智能问答系统(SpringBoot4+Vue3+Ollama)
java·人工智能
程序员晨曦15 小时前
Java 并发修仙传:ThreadLocal 从“闭关修炼”到“走火入魔”的救赎之路
java·开发语言
AIGS00115 小时前
探索向量空间JBoltAI:工业企业数智化升级的基础设施
java·人工智能·人工智能ai大模型应用
神奇小汤圆15 小时前
两种方式,彻底解决 Codex 令人恼火的问题
后端
用户342323237631716 小时前
工业数据采集安全——当 OT 遇见 IT,谁对谁错?
后端
zhangjw3416 小时前
第18篇:Java网络编程零基础详解,IP、端口、TCP、UDP、Socket通信、实战文件传输
java·网络·tcp/ip
我命由我1234516 小时前
Java 开发 - Jar 包与 War 包
java·开发语言·java-ee·intellij-idea·jar·idea·intellij idea
Upsy-Daisy16 小时前
Hermes Agent 学习笔记 04:工具调用系统,让 Agent 从“会说”变成“会做”
java·笔记·学习
Volunteer Technology16 小时前
SpringSecurity请求流转的本质
java·spring