1.说到Spring MVC就会想到它是基于MVC设计模式的思想来设计的:
那么MVC设计模式是什么呢? 下面来介绍一下
MVC 设计模式
MVC是模型(model)-视图(view)-控制器(controller)的缩写,是一种用于设计编写Web应用程序的模式。
MVC设计模式的三大角色:
Model (模型)
模型层(Model):在模型层中又可以分为两层,即Service层和Dao层,这两层的主要功能是:
Service层:负责某些业务处理
Dao层:负责访问数据库,对数据的操作,获取结果集等
View (视图)
通常指的就是我们的jsp或者html。作用一般就是展示数据的。
主要负责显示数据(Html、Css、jQuery等等)
Controller (控制器)
是应用程序中处理用户交互的部分,作用一般就是处理程序逻辑的,主要功能是处理用户的请求
2.介绍完MVC设计模式,让我们来看看Spring MVC的三大组件分别是什么吧!
Spring MVC的三大组件:
处理器映射器(HandlerMapping):
作用:
1.实现类是存储请求和处理器映射关系
2.接口类是对外提供访问映射关系的功能
视图解析器(ViewResolver):
作用:根据视图名称解析视图对象
处理器适配器(HandlerAdapter):
作用:实现类提供适配
讲完这些让我们来看看Spring MVC的生命周期到底是什么样的吧!(流程图)
流程图步骤解释:
1:客户端发出请求到http里面只要符合web.xml里面的配置就转换到DispatcherServlet(前端控制器)来处理
2:前端控制器请求HandlerMapping(处理器映射器)寻找 Handler
3:处理器向DispatcherServlet(前端控制器)返回Handler(处理器)
4:DispatcherServlet(前端处理器)调用处理器适配器去执行Handler
5:Handler让具体的Controller执行。
6:Handler执行完成给适配器返回 ModelAndView(存储处理完后的结果数据,以及显示该数据的视图包括:Model和view)
7:ModelAndView将解析后的信息传递给DispatcherServlet(前端控制器),如解析控制器映射等
8:DispatcherServlet调用视图解析器(ViewResolver)来解析ModelAndView传递的逻辑视图名。
9:视图解析器将解析的逻辑视图名传给DispatcherServlet。
10:DispatcherServlet根据视图解析器解析的视图结果,调用具体的视图
11:最终视图呈现给用户(响应结果)