SpringBoot启动请求流程

3 阅读1分钟
  1. 应用启动

    • 创建 Spring 应用上下文SpringApplication.run() 启动 Spring Boot 应用,创建 ApplicationContext
    • 自动配置:应用自动配置相关 Bean 和服务(如数据源、MVC 配置)。@EnableAutoConfiguration注解作用
    • 初始化 Bean:实例化并初始化所有配置的 Beans。
    • 启动嵌入式容器:内嵌 Web 容器(如 Tomcat)启动并准备接受请求。
  2. 处理 HTTP 请求

    • 请求到达嵌入式容器:请求通过内嵌的 Web 容器到达应用。
    • 请求到达 DispatcherServlet:容器将请求交给 DispatcherServlet,前端控制器。
    • 查找 HandlerDispatcherServlet 使用 HandlerMapping 查找对应的 Controller。
    • 调用 HandlerDispatcherServlet 调用对应的 Controller 方法来处理请求。
    • 处理请求:Controller 执行业务逻辑,返回数据或视图名称。
    • 视图解析:如果返回的是视图名称,DispatcherServlet 使用 ViewResolver 解析视图。
    • 渲染视图:将数据填充到视图模板中,生成 HTML 响应。
    • 返回响应DispatcherServlet 将生成的视图或数据返回给客户端。