一文拿捏SpringMVC的调用流程

SpringMVC的调用流程

1.核心元素:

  • DispatcherServlet(前端控制器)
  • HandlerMapping(处理器映射器)
  • HandlerAdapter(处理器适配器) ---> Handler(处理器)
  • ViewResolver(视图解析器 )---> view(视图)

2.调用流程

  1. 用户发送请求到前端控制器
  2. 前端控制器接收用户请求并交由处理器映射器进行映射处理
  3. 处理器映射器找到具体的处理器(可查找xml配置或注解配置),生成处理器对象及处理器拦截器(如果有),再一起返回给前端控制器
  4. 前端控制器调用处理器适配器,适配具体的处理器(controller/handler)
  5. 处理器执行后生成ModelAndView对象并返回给前端控制器
  6. 前端控制器将拿到的ModelAndView对象交由视图解析器进行解析
  7. 视图解析器将解析后的视图(view)返回给前端控制器
  8. 前端控制器根据拿到的视图进行渲染(数据模型填充视图)
  9. 前端控制器响应用户请求

详细总图

相关推荐
恼书:-(空寄15 小时前
Spring AOP底层是怎么织入的?——ProxyFactory、JDK Proxy vs CGLIB与编译期织入
spring·动态代理
长不胖的路人甲16 小时前
SpringCloud 服务雪崩、熔断、降级
后端·spring·spring cloud
卓怡学长21 小时前
w263基于springboot + vue 健康饮食管理系统
java·数据库·vue.js·spring boot·spring·intellij-idea
KINGSEA_1681 天前
Spring事务原理与高频考点
spring
Y001112361 天前
SpringBoot 基础篇
java·spring boot·spring
闲猫2 天前
Spring AI Agentic 模式(第1部分):Agent Skills——模块化、可复用的能力
java·人工智能·spring
952362 天前
RabbitMQ-基础操作
java·spring boot·分布式·后端·spring·rabbitmq
卓怡学长2 天前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea
wang09072 天前
自己动手写一个spring之MVC_3
java·spring·mvc
闲猫2 天前
Spring AI / Models / Chat Models / Ollama
java·人工智能·spring