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 当做结果返回给客户端
相关推荐
赫瑞1 分钟前
Java中的 Dijkstra 算法
java·算法
pip install USART2 分钟前
解决@Autowired注解失败导致空指针bug
java·spring·bug
摇滚侠9 分钟前
限流的方法,Redis 计算器限流算法、滑动时间窗口限流算法、漏漏桶限流算法、令牌桶限流算法,Java 开发
java·数据库·redis
IronMurphy12 分钟前
Java 泛型深度解析:编译期类型擦除机制与 PECS 准则
java·windows·python
南山love24 分钟前
spring-boot项目实现发送qq邮箱
java·服务器·前端
wuqingshun31415926 分钟前
说一下spring的bean的作用域
java·后端·spring
花间相见1 小时前
【Java基础面试题】—— 核心知识点面试题(含答案):语法+集合+JVM+设计模式+算法
java·jvm·设计模式
钟智强1 小时前
从2.7GB到481MB:我的Docker Compose优化实战,以及为什么不能全信AI
后端·docker
会飞De琥珀1 小时前
java工具类,字符串转时间
java·开发语言
曹牧1 小时前
JSON 数组的正确使用方式
java·服务器·前端