Spring MVC 请求流程和各个组件之间的作用

学习Spring MVC 首先要弄明白的的是关于Spring MVC 的请求流程 。(下面的流程图自己用Word文档画的,不好也就这样看)

具体流程不再用文字表述了,但这个请求流程图用到的组件有:

  1.  前端控制器  dispatcherServlet  
  2. 处理映射器  HandlerMapping
  3. 处理适配器 HandlerAdapter
  4. 处理器 Handler
  5. 视图解析器 View Resolver
  6. 视图 View

 各个组件功能的功能如下:

  1. 前端控制器 (DispatcherServlet)。其作用是接收用户请求,然后反馈结果。他的作用相当于一个转发器或者中央处理器,控制整个流程的执行,对各个组件进行统一调度,以降低组件之间的耦合性,有利于组件之间的拓展。
  2. 处理器映射器(HandlerMapping)。其作用是根据请求的URL路径,通过注解或者XML配置,寻找配置的处理器(Handler)信息。
  3. 处理器适配器(Handler)。其作用是根据映射器找到的处理器(Handler)信息,按照特定的规则执行相关的处理器(Handler)。
  4. 处理器(Handler)。其作用是执行相关的请求处理逻辑,并返回相应的数据和视图信息,将其封装到ModelAndView对象中。
  5. 视图解析器(View Resolver)。其作用是进行解析操作,通过ModelAndView 对象中的View信息将逻辑视图名解析成真正的视图View(如通过一个JSP路径返回一个真正的JSP页面)。
  6. 视图(View)。其本身是一个接口,实现类支持不同的View类型(JSP、FreeMarker、Excel 等)。

以上6个组件正真需要开发人员进行开发的是处理器(Handler)和视图(View)。要开发处理该请求的具体代码逻辑,以及最终展示给用户的界面。

发布了30 篇原创文章 · 获赞 21 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44078196/article/details/88044285