SpringMVC工作原理【流程图+文字详解SpringMVC工作原理】

SpringMVC工作原理

  • 前端控制器:DispactherServlet
  • 处理器映射器:HandlerMapping
  • 处理器适配器:HandlerAdapter
  • 处理器:Handler,
  • 视图解析器:ViewResolver
  • 视图:View
  1. 首先用户通过浏览器发起HTTP请求,请求直接到前端控制器DispatcherServlet.
  2. 前端控制器接收到请求后 调用处理器映射器HandlerMapping,处理器映射器根据请求的URL找到具体的Handler,并将Handler返回给前端控制器。
  3. 前端控制器调用处理器适配器HandlerAdapter去适配Handler
  4. 处理器适配器会根据Handler去调用真正的处理器去处理请求,并且处理对应的业务逻辑
  5. 当处理器处理完业务之后,会返回ModelAndView对象给处理器适配器,HandlerAdapter再将该对象返回给前端控制器;这里的Model是返回的数据对象,View是逻辑上的View.
  6. 前端控制器DispatcherServlet将返回的ModelAndView对象传给视图解析器ViewResovler进行解析,解析完成之后会返回一个具体的视图View给前端控制器(ViewReslover根据逻辑的View查找具体的View)
  7. 前端控制器DispatcherServlet将具体的视图进行渲染,渲染完成之后响应给客户端浏览器。渲染完成之后响应给客户端浏览器。
相关推荐
yuweiade1 分钟前
Spring Boot中使用Server-Sent Events (SSE) 实现实时数据推送教程
java·spring boot·后端
小箌10 分钟前
springboot_03
spring boot·后端·状态模式
冬奇Lab16 分钟前
一天一个开源项目(第54篇):Supabase - 开源的 Postgres 开发平台,Firebase 替代方案
后端·开源·资讯
丈剑走天涯28 分钟前
kubernetes java app 部署使用harbor私服 问题集合
java·容器·kubernetes
摇滚侠1 小时前
JAVA 项目教程《黑马商城-Redis 篇》,分布式架构项目,从开发到部署
java·redis·分布式
中年程序员一枚1 小时前
spring-cloud-starter-openfeign现实中的运行逻辑
java·spring boot·后端
子超兄1 小时前
线程池相关问题
java·开发语言
why技术2 小时前
我拿到了腾讯QClaw的内测码,然后沉默了。
前端·后端
清水白石0082 小时前
Python 并发三剑客:多线程、多进程与协程的实战抉择
java·服务器·python
想搞艺术的程序员2 小时前
Java Survivor区学习笔记
java·笔记·学习·垃圾回收