SpringMVC 的请求流程(高频面试题)

文章目录

SpringMVC

是什么,好处

Spring MVC 是Spring上最重要的框架。它是Web 框架,按照MVC 的模式,实现代码的解耦。Model 业务层、View 视图层、Controller 控制层。

将view层的请求数据在controller控制层中请求,在到业务层处理数据,最后返回到view层渲染。

SpringMVC的核心组件有哪些

● dispatcherServlet,核心处理器,用于接受请求、分发请求、给客户端回应。

● handlerMapping,处理映射器,根据url找到对应的hanlder,并将拦截器与 Handler 封装在一起。

● handlerAdapter,处理适配器,根据handlerMapping找到的handler,适配执行handler。

● handler,请求处理器,执行实际请求的处理

● ViewResovler,视图解析器,用于将Handler返回的modelandView解析渲染为返回请求的视图。

请求流程

  1. 客户端发起请求,DispatcherServlet 拦截请求。
  2. HandlerMapping 根据请求去寻找对应的 Handler 处理器。将相关的拦截器与处理器封装在一起。
  3. HandlerAdapter 根据 HandlerMapping 寻找的映射器,进行适配执行 handler
  4. handler 执行后返回 ModelandView,Model 为数据对象,View 为逻辑视图对象。
  5. ViewResovler 根据逻辑View 查找实际的View
  6. DispatcherServlet 将Model 给View进行视图渲染。
  7. 把View 当做结果返回给客户端
相关推荐
我学上瘾了5 小时前
Spring Cloud的前世今生
后端·spring·spring cloud
波波0076 小时前
ASP.NET Core 健康检查实战:不只是一个 /health 接口
后端·asp.net
小码哥_常6 小时前
Spring Boot 搭建邮件发送系统:开启你的邮件自动化之旅
后端
石榴树下的七彩鱼7 小时前
图片修复 API 接入实战:网站如何自动去除图片水印(Python / PHP / C# 示例)
图像处理·后端·python·c#·php·api·图片去水印
我叫黑大帅7 小时前
为什么TCP是三次握手?
后端·网络协议·面试
我叫黑大帅7 小时前
如何排查 MySQL 慢查询
后端·sql·面试
techdashen7 小时前
Rust项目公开征测:Cargo 构建目录新布局方案
开发语言·后端·rust
一 乐7 小时前
电影院|基于springboot + vue电影院购票管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·电影院购票管理管理系统
恼书:-(空寄7 小时前
JVM GC 日志分析 + 常见 GC 场景 + 实战参数调优
java·jvm
消失的旧时光-19437 小时前
Spring Boot 实战(五):接口工程化升级(统一返回 + 异常处理 + 错误码体系 + 异常流转机制)
java·spring boot·后端·解耦