文章目录
一、什么是MVC?
- MVC表示的是模型(Model)、视图、控制器,是通用软件设计规范之一。
- MVC降低了试图和业务逻辑之间的双向耦合性。
- mvc是将业务逻辑、项目数据、数据显示进行分离从而编写代码
Model(模型)
数据模型,提供要显示的数据,包含了数据以及行为,可认为是领域模型、pojo类或JavaBean的相关类(具有数据和行为)。现在都分开进行代码书写 Value Object(数据Dao) 和 服务层 (行为Service)。模型提供了模型数据查询和模型数据的状态更新等功能,包括数据和业务。
View(视图)
负责进行模型的展示,就是客户需要看到的东西。
Controller(控制器)
负责接收用户的各项请求,对模型进行处理,处理后将模型数据返回给视图,视图进行展示,相当于一个调度员。
常见的MVC是JSP(视图)+servlet(控制器)+javabean(模型)模式
二、SpringMVC是什么?
1.官方文档地点
-
Spring Web MVC 是最初建立在 Servlet API 之上的 Web 框架,从一开始就包含在 Spring Framework 中。正式名称“Spring Web MVC”来自其源模块的名称 ( spring-webmvc),但通常称为“Spring MVC”。
-
Spring MVC 与许多其他 Web 框架一样,是围绕前端控制器模式设计的,其中央Servlet,DispatcherServlet为请求处理提供共享算法,而实际工作由可配置的委托组件执行。该模型非常灵活,支持多种工作流程。
2.DispatcherServlet(中心控制器)
-
DispatcherServlet,因为任何Servlet,需要根据通过使用Java配置或在Servlet说明书中声明和映射web.xml。反过来,DispatcherServlet使用Spring配置文件来发现它需要请求映射,视图解析,异常处理,委托组件等功能
-
Spring MVC框架像许多其他MVC框架一样, 以请求为驱动 , 围绕一个中心Servlet分派请求及提供其他功能,DispatcherServlet是一个实际的Servlet (它继承自HttpServlet 基类)。
三、SpringMVC执行原理
- Spring MVC框架像许多其他MVC框架一样, 以请求为驱动 , 围绕一个中心Servlet分派请求及提供其他功能,DispatcherServlet是一个实际的Servlet (它继承自HttpServlet 基类)。
四、SpringMVC工作流程
- Spring MVC 框架主要由 DispatcherServlet、处理器映射、控制器、视图解析器、视图组成:
Sring MVC 的工作流程如下: - 1.客户端请求提交到 DispatcherServlet。
- 2.由 DispatcherServlet 控制器寻找一个或多个 HandlerMapping,找到处理请求的 Controller。
- 3.DispatcherServlet 将请求提交到 Controller。
- 4.Controller 调用业务逻辑处理后返回 ModelAndView。
- 5.DispatcherServlet 寻找一个或多个 ViewResolver 视图解析器,找到 ModelAndView 指定的视图。
- 6.视图负责将结果显示到客户端。
Spring MVC 接口
-
DispatcherServlet: 请求分发给 Controller 之前需要借助 Spring MVC 提供的 HandlerMapping 定位到具体的 Controller。
-
HandlerMapping:负责完成客户请求到 Controller 映射。
-
Controller :处理用户请求,一旦 Controller 处理完用户请求,将返回 ModelAndView 对象给 DispatcherServlet 前端控制器,ModelAndView 中包含了模型(Model)和视图(View)。
-
ViewResolver:在 Web 应用中负责查找 View 对象,从而将相应结果渲染给客户。
总结
听说这里又要写总结~~~~·(spring mvc相当重要!!!!)