【Spring】Springmvc执行流程

介绍

SpringMVC是一种基于Spring实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,使用了MVC的架构模式思想,将Web层进行指责解耦,并管理应用所需的生命周期,为简化日常开发,提供了很大便利。

组件

组件
DispatcherServlet 前端控制器:接收请求、响应结果,相当于转发器,有了 DispatcherServlet 就减少了其它组件之间的耦合度。
HandlerMapping 处理器映射器 :根据请求的 URL 来查找 Handler。
HandlerAdapter 处理器适配器 :负责执行 Handler。
Handler 处理器 :处理业务逻辑的 Controller 类。
ViewResolver 视图解析器 :进行视图的解析,根据视图逻辑名将 ModelAndView 解析成真正的视图(view) 。
View 视图 :View 是一个接口, 它的实现类支持不同的视图类型,如 jsp,freemarker, pdf 等

流程图

SpringMVC 1.发送请求 2.查询Handler 3.返回Handler 4.执行Handler 5.请求 6.响应 7.返回ModelAndView 8.解析视图 9.返回View对象 10.渲染视图 11.返回响应 DispatcherServlet
前端控制器 HandlerMapping
处理器映射器 HandlerAdapter
处理器适配器 ViewResolver
视图解析器 Handler
Controller处理器 View
视图 用户

RestController的执行流程
SpringMVC 1.发送请求 2.查询Handler 3.返回Handler 4.执行Handler 5.请求 6.响应 7.返回对象 8.返回JSON字符串响应 DispatcherServlet
前端控制器 HandlerMapping
处理器映射器 HandlerAdapter
处理器适配器 Handler
Controller处理器 用户

相关推荐
kite0121几秒前
Go语言Map深度解析与最佳实践
开发语言·后端·golang
阳光是sunny19 分钟前
LangGraph实战教程:控制流详解
前端·人工智能·后端
码农学院20 分钟前
基于Spring Boot的跨境电商多语言订单管理系统架构设计
java·大数据·spring boot
技术小结-李爽1 小时前
【工具】pom文件的<packaging>
java·maven
hold?fish:palm1 小时前
kv存储主从复制的设计与实现
c++·redis·后端
l156469482 小时前
突围!图文混合知识库难以解析,Kimi-K3 原生视觉架构深耕知识工作,DMXAPI 统一接口,缩短项目开发周期
java·大数据·开发语言
swipe2 小时前
07|(前端转后全栈)为什么后端也要缓存?从前端缓存思维理解 Redis
前端·后端·全栈
952362 小时前
Docker - 基础
运维·后端·docker·容器
swipe2 小时前
06|(前端转后全栈)登录后端到底在做什么?JWT、Spring Security 和权限链路
前端·后端·全栈
布吉岛的石头3 小时前
Java 程序员第 45 阶段11:网关统一路由大模型接口,配合 Nacos 配置治理,灰度路由:基于Nacos元数据实现大模型服务灰度发布与权重路由
java·服务发现