Spring MVC基础

Spring MVC介绍

Spring MVC是Spring Framework的一部分,是基于Java实现MVC的轻量级Web框架。Spring MVC的特点:
1、轻量
2、高效
3、与Spring兼容性好
4、功能强大
RESTful、数据验证、格式化、绑定机制、本地化、主题等
5、简洁灵活

Spring的web框架围绕DispatcherServlet前端控制器设计。 DispatcherServlet的作用是将请求分发到不同的处理器。

运行原理

解释1

当发起请求时被前置的控制器拦截到请求,根据请求参数生成代理请求找到请求对应的实际控制器控制器处理请求创建数据模型,访问数据库,将模型响应给中心控制器,控制器使用模型与视图渲染视图结果,将结果返回给中心控制器再将结果返回给请求者。如下图所示:

解释2

简单流程:(reques—》DispatcherServlet前端控制器—》HandlerMapping处理器映射器—》DispatcherServlet前端控制器—》适配器—》

ModelAndView—》DispatcherServlet前端控制器—》ViewResolver视图解析器—》DispatcherServlet前端控制器—》将view填充到request域)

第一步:用户发起request请求,请求至DispatcherServlet前端控制器

第二步:DispatcherServlet前端控制器请求HandlerMapping处理器映射器查找Handler

              DispatcherServlet:前端控制器,相当于中央调度器,各各组件都和前端控制器进行交互,降低了各组件之间耦合度。

第三步:HandlerMapping处理器映射器,根据url及一些配置规则(xml配置、注解配置)查找Handler,将Handler返回给DispatcherServlet前端控制器

第四步:DispatcherServlet前端控制器调用适配器执行Handler,有了适配器通过适配器去扩展对不同Handler执行方式(比如:原始servlet开发,注解开发)

第五步:适配器执行Handler

               Handler是后端控制器,当成模型。

第六步:Handler执行完成返回ModelAndView

               ModelAndView:springmvc的一个对象,对Model和view进行封装。

第七步:适配器将ModelAndView返回给DispatcherServlet

第八步:DispatcherServlet调用视图解析器进行视图解析,解析后生成view

                   视图解析器根据逻辑视图名解析出真正的视图。

                   View:springmvc视图封装对象,提供了很多view,jsp、freemarker、pdf、excel。。。  

第九步:ViewResolver视图解析器给前端控制器返回view

第十步:DispatcherServlet调用view的渲染视图的方法,将模型数据填充到request域

第十一步:DispatcherServlet向用户响应结果(jsp页面、json数据)

Spring MVC入门实例

原文地址:https://www.cnblogs.com/huangdabing/p/9503496.html