一文拿捏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. 前端控制器响应用户请求

详细总图

相关推荐
sg_knight1 小时前
Docker 实战:如何限制容器的内存使用大小
java·spring boot·spring·spring cloud·docker·容器·eureka
WZTTMoon6 小时前
Spring 配置解析与 @Value 注入核心流程详解
java·spring boot·spring
wxin_VXbishe7 小时前
springboot在线课堂教学辅助系统-计算机毕业设计源码07741
java·c++·spring boot·python·spring·django·php
信仰_2739932437 小时前
RedisCluster客户端路由智能缓存
java·spring·缓存
兰雪簪轩7 小时前
仓颉语言内存布局优化技巧:从字节对齐到缓存友好的深度实践
java·spring·缓存
超级苦力怕9 小时前
《Spring Framework 核心原理与实践指南》
spring
WZTTMoon10 小时前
从 “完整对象” 视角看Spring 循环依赖
java·spring boot·后端·spring
纪莫10 小时前
技术面:SpringCloud(SpringCloud有哪些组件,SpringCloud与Dubbo的区别)
java·spring·java面试⑧股
Deamon Tree13 小时前
【设计题】如何实现一个线程安全的缓存?
java·spring boot·spring
你不是我我14 小时前
【Java 开发日记】我们来说一下 Mybatis 的缓存机制
java·spring·mybatis