Web层框架:SpringMVC

1、概述

SpringMVC是一个MVC(Model View Controller)的开源框架,其是Spring的一个后续产品,在Spring原有的基础上,又提供了web应用的MVC模块,可以简单的把SpringMVC理解为是spring的一个模块(类似AOP,IOC这样的模块),网络上经常会说SpringMVC和Spring无缝集成,其实SpringMVC就是SpringW的一个子模块,所以根本不需要同spring进行整合。具体含义如下:

  • Model:模型,用来处理数据,一般是一个实体类,例如User类;
  • View:视图,用来显示界面,可以是JSP或Html;
  • Controller:控制器,用来决定哪个界面来展示模型(其实是业务处理器)。

2、组件及其作用

  • 前端控制器(DispatcherServlet):接收请求,响应结果,相当于电脑的CPU;

  • 处理器映射器(HandlerMapping):根据URL去查找处理器;

  • 处理器(Handler):需要程序员去写代码处理逻辑;

  • 处理器适配器(HandlerAdapter):把处理器包装成适配器,这样就可以支持多种类型的处理器,类比笔记本的适配器(适配器模式的应用);

  • 视图解析器(ViewResovler):进行视图解析,将返回的字符串进行处理,可以解析成对应的页面。

3、工作原理

Web层框架:SpringMVC
第一步:用户发起请求到前端控制器(DispatcherServlet);

第二步:前端控制器请求处理器映射器(HandlerMappering)去查找处理器(Handle,通过xml配置或者注解进行查找);

第三步:找到以后处理器映射器(HandlerMappering)像前端控制器返回执行链(HandlerExecutionChain);

第四步:前端控制器(DispatcherServlet)调用处理器适配器(HandlerAdapter)去执行处理器(Handler);

第五步:处理器适配器去执行Handler;

第六步:Handler执行完给处理器适配器返回ModelAndView;

第七步:处理器适配器向前端控制器返回ModelAndView;

第八步:前端控制器请求视图解析器(ViewResolver)去进行视图解析;

第九步:视图解析器像前端控制器返回View;

第十步:前端控制器对视图进行渲染;

第十一步:前端控制器向用户响应结果。

上一篇:记一个Dictionary更新数据操作的低级错误,以示警示


下一篇:SpringMVC详解