SpringMVC 的运行流程

  • 首先,上图

  • 流程概述

  1. 用户请求提交到 DispatchServlet
  2. 由DispatchServlet 控制器查询一个或多个HandlerMapping, 找到处理请求的Controller
  3. DispatchServlet将访问请求转发到Controller
  4. Controller调用业务逻辑处理后。返回ModelAndView
  5. DispatchServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
  6. 视图负责将结果显示给客户端
  • 部分总结

一、从2个Handler 中,找到合适的控制器。

BeanNameUrlHandlerMapping                XML的配置方式的控制器

RequestMappingHandlerMapping           注解方式的控制器

handlerMapping 返回一个 HandlerExecutionChain(执行链), 给DispatchServlet。然后DispatchServlet 调用 HandlerAdapter(适配器)

二、从3个Adapter 中,找到合适的处理器

HttpRequestHandlerAdapter                   XML的配置方式的Adapter

SimpleControllerHandlerAdapter            XML的配置方式的Adapter(implements Controller的方式创建的)

RequestMappingHandlerAdapter           注解方式的Adapter

SimpleControllerHandlerAdapter  :下图可以看出 对Handler 进行了强转 ,所以必须实现 Controller。

 

mappedHandler.applyPreHandle(processedRequest, response) 循环调用拦截器方法

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值