前端请求到 SpringMVC 的处理流程

在这里插入图片描述

1. 发起请求

客户端通过 HTTP 协议向服务器发起请求。

2. 前端控制器(DispatcherServlet)

这个请求会先到前端控制器 DispatcherServlet,它是整个流程的入口点,负责接收请求并将其分发给相应的处理器

3. 处理器映射(HandlerMapping)

DispatcherServlet 调用 HandlerMapping 来确定哪个 Controller 应该处理这个请求。通常会根据请求的 URL 来确定

4. 处理器适配器(HandlerAdapter)

一旦找到目标 Controller,DispatcherServlet 会使用 HandlerAdapter 来调用 Controller 的处理方法

5. 执行处理器(Controller)

Controller 处理请求,处理完后返回一个 ModelAndView 对象,其中包含模型数据和逻辑视图名

6. 视图解析器(ViewResolver)

DispatcherServlet 接收到 ModelAndView 后,会使用 ViewResolver 来解析视图名称,找到具体的视图页面

7. 渲染视图

视图使用模型数据渲染页面,生成最终的页面内容

8. 响应结果

DispatcherServlet 将视图结果返回给客户端


在前后端分离的情况下,步骤 ⑥、⑦、⑧ 会略有不同,后端通常只需要处理数据,并将 JSON 格式的数据返回给前端就可以了,而不是返回完整的视图页面。


👨‍🏫 参考地址

相关推荐

  1. 简单分析SpringMVC处理请求流程

    2024-03-11 07:54:07       42 阅读
  2. SpringMVC启动与请求处理流程解析

    2024-03-11 07:54:07       44 阅读
  3. [go 面试] 前端请求后端API中间件流程解析

    2024-03-11 07:54:07       38 阅读
  4. tomcat处理Http请求流程步骤

    2024-03-11 07:54:07       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-11 07:54:07       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-11 07:54:07       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-11 07:54:07       82 阅读
  4. Python语言-面向对象

    2024-03-11 07:54:07       91 阅读

热门阅读

  1. 03hive数仓安装与基础使用

    2024-03-11 07:54:07       38 阅读
  2. hive分区和分桶你熟悉吗?

    2024-03-11 07:54:07       44 阅读
  3. 安卓kotlin面试题 61-70

    2024-03-11 07:54:07       40 阅读
  4. linux - 进程和服务(上篇)

    2024-03-11 07:54:07       41 阅读
  5. hive总结

    2024-03-11 07:54:07       47 阅读
  6. 洛谷P1395 会议 做题反思(2024.3.10)

    2024-03-11 07:54:07       45 阅读
  7. ETCD分布式缓存

    2024-03-11 07:54:07       36 阅读
  8. 安卓 Kotlin 面试题 21-30

    2024-03-11 07:54:07       43 阅读
  9. Git-安装与使用(快速上手图文教程)

    2024-03-11 07:54:07       48 阅读