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 当做结果返回给客户端
相关推荐
胚芽鞘6811 小时前
关于java项目中maven的理解
java·数据库·maven
岁忧2 小时前
(LeetCode 面试经典 150 题 ) 11. 盛最多水的容器 (贪心+双指针)
java·c++·算法·leetcode·面试·go
CJi0NG2 小时前
【自用】JavaSE--算法、正则表达式、异常
java
Nejosi_念旧2 小时前
解读 Go 中的 constraints包
后端·golang·go
风无雨2 小时前
GO 启动 简单服务
开发语言·后端·golang
Hellyc2 小时前
用户查询优惠券之缓存击穿
java·redis·缓存
小明的小名叫小明2 小时前
Go从入门到精通(19)-协程(goroutine)与通道(channel)
后端·golang
斯普信专业组2 小时前
Go语言包管理完全指南:从基础到最佳实践
开发语言·后端·golang
今天又在摸鱼3 小时前
Maven
java·maven
老马啸西风3 小时前
maven 发布到中央仓库常用脚本-02
java·maven