03 - springMVC架构分析-流程图解

前言

上篇基础入门篇, 只是一个最简单的例子, 还有很多地方需要改进和学习,在下一步学习之前还是感觉应该大体的了解一下整体的架构框架设计流程等,也方便对springMVC的进一步理解打好基础

概述

说明: springMVC 主题的框架可分为: " 一个中心 , 三个基本点" .

  • 一个中心 : “前端口控制器(dispatcherServlet)” , 相当于人大脑,起到中心调度其他功能任务.
  • 三个基本点: 在springmvc的各个组件中, 处理器映射器(handlerMapping)、处理器适配器(handlerAdapter)、视图解析器(viewResolver), 这三个称为springMVC的三大组件。 别称三个基本点。

1.总体-图解

为方便理解花点时间做了个大概流程图:
在这里插入图片描述

2. 流程概述

①、用户发送请求至前端控制器(DispatcherServlet)。
②、前段控制器收到请求调用HandlerMapping处理器映射器 。
③、处理器映射器根据请求的url找到具里的处理器, 生成处理器对象以及处理器拦截器后,返回给前端控制器。
④、前段控制器拿到上步的返回结果后,通过调用处理器适配器(HandlerAdapter)找到指定的处理器(这里处理器就是通常我们要编写contrller类了,通常也叫做后端处理器)。
⑤、处理器适配器将controler(后端控制器)处理的结果ModelAndView返回给前端控制器。
⑥、前端控制器拿到上步返回的ModelAndView,接着调用视图解析器(ViewResolver)解析该视图。
⑦、视图解析器解析以后返回具体的View给前端控制器。(这里的view包括jstlView、freemarkerView、pdfView、jsp)当然最常使用的视图就是jsp了。
⑧、前端控制器收到view(我这里指的是jsp)进行,jsp的渲染(即转成servlet, 将标签、模型数据等填充到视图中)。
⑨、最后一步响应用户。

3.各组件概要

  • DispatcherServlet: 前端控制器
    用户请求到大前端控制器,是整个流程控制的中心。类似于汽车的中控系统。 由它调用其它组件处理用户的请求。(深入理解一点,这样的设计也很好的降低了各组件之间的联系官话叫做(耦合性),符合java面对对象的思想)
  • HandlerMapping: 处理器映射器
    负责根据客户端的请求url , 找到Handler(处理器)。 springMVC有几种不通的映射器实现方式, 如: 配置文件方式 、时间接口方式、注解方式等。
  • HandlerAdapter: 处理器适配器
    通过处理器 调用不同的处理器 Handler , 来具体处理客户端的请求。 也是一种适配器的思想-方便灵活扩展与控制(个人理解)
  • Handler: 处理器
    即后端控制器,在前端控制器的调度中负责对具体的请求进行处理。(一些一般就是自己编写的controller的东西了)
  • View: 视图
    springmvc框架提供了很多的View视图类型的支持,包括:jstlView、freemarkerView、pdfView等。我们最常用的视图就是jsp。一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示到客户端。

总结: 使用springMVC框架,需要我们自己写的也就是 Handler 和 view, 再具体点就是controller(注解方式) 和 jsp

猜你喜欢

转载自blog.csdn.net/fanbaodan/article/details/85013231