SpringMVC——请求流程详解

本文详细介绍了SpringMVC框架的工作原理,包括其基于请求驱动的设计、前端控制器模型、请求映射规则以及整体处理流程,从用户请求到达前端控制器开始,到最终响应返回给用户的过程。
  • SpringMVC框架是一个基于请求驱动的Web框架,并且使用了‘前端控制器’模型来进行设计,再根据‘请求映射规则’分发给相应的页面控制器进行处理。

  • 整体流程:

    • 具体步骤:
  1. 首先用户发送请求到前端控制器,前端控制器根据请求信息(如 URL)来决定选择哪一个页面控制器进行处理并把请求委托给它,即以前的控制器的控制逻辑部分;图中的 1、2 步骤;
  2. 页面控制器接收到请求后,进行功能处理,首先需要收集和绑定请求参数到一个对象,这个对象在 Spring Web MVC 中叫命令对象,并进行验证,然后将命令对象委托给业务对象进行处理;处理完毕后返回一个 ModelAndView(模型数据和逻辑视图名);图中的 3、4、5 步骤;
  3. 前端控制器收回控制权,然后根据返回的逻辑视图名,选择相应的视图进行渲染,并把模型数据传入以便视图渲染;图中的步骤 6、7;
  4. 前端控制器再次收回控制权,将响应返回给用户,图中的步骤 8;至此整个结束。
  • 核心流程:

    • 具体步骤: ​​​​​​
  1. 用户发送请求至 前端控制器DispatcherServlet。
  2. 前端控制器DispatcherServlet 收到请求调用 处理器映射器HandlerMapping。​​​​​​​
  3. 处理器映射器HandlerMapping 找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给 前端控制器DispatcherServlet
  4. 前端控制器DispatcherServlet 调用 处理器适配器HandlerAdapter
  5. 处理器适配器HandlerAdapter 经过适配调用具体的 处理器(Controller,也叫后端控制器)
  6. Controller 执行完成返回 模型数据与逻辑视图ModelAndView
  7. 处理器适配器HandlerAdapterController 执行结果 ModelAndView 返回给 前端控制器DispatcherServlet
  8. 前端控制器DispatcherServletModelAndView 传给 视图解析器ViewReslover,解析 ModelAndView 得到正正的物理视图 View
  9. 视图解析器ViewReslover前端控制器DispatcherServlet 返回 View
  10. 前端控制器DispatcherServlet 根据 View 进行视图渲染(把数据放到 jsp 页面上),并返回页面结果给 前端控制器DispatcherServlet
  11. 最后 前端控制器DispatcherServlet 向用户响应结果。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值