【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处理器 用户

相关推荐
金銀銅鐵1 小时前
一个 Java 文件实现《孫子兵法·始計篇》中英对照阅读器
java·后端·ai编程
DevOpenClub1 小时前
高考教育信息问答 API:会话参数、资料引用与流式响应
java·数据库·高考
bro_Java6661 小时前
《排序的底层逻辑:比较、交换与分治》
java·算法·排序算法
用户360055579002 小时前
Kestrel_VLLM - 34 · 批量 M 行:五个块、两种层型,与「退回去」的两个原语
后端
leo在掘金2 小时前
25.5k Star 的 DeepInfer 怎么扛住3万亿参数
后端·架构
Agent世界3 小时前
cookie 判据会撒谎:CDP 登录态保活的五个实测坑
后端·自动化运维
林小帅3 小时前
【笔记】Prisma v7 + SQLite TS2305 及连锁 TS7006 问题
前端·javascript·后端
王中阳Go3 小时前
你那条三跳链路的单跳超时,是按压测的 p95 定的,还是拍出来的?
人工智能·后端·架构
时光不老杰3 小时前
03 Netty 双通道长连接层
后端
文丑颜不良啊3 小时前
LeetCode2081~2100题目解析
java·leetcode