Spring MVC 应用开发
1 基础概念介绍
2 返回值处理
Spring MVC 基础概念介绍
- Spring MVC 应用开发
- 一、基础概念介绍
- 二、应用系统三层架构
- 2.1 表现层:
- 2.2 业务层:
- 2.3 持久层:
- 三、 MVC设计模式
- 四、 SpringMVC介绍
- 4.1 SpringMVC是什么
- 4.2 SpringMVC与Spring的联系
- 4.3 六大组件介绍
一、基础概念介绍
BS和CS开发架构
- 一种是 C/S 架构,也就是客户端/服务器;
- 一种是 B/S 架构,也就是浏览器/服务器架构
说明:
我们现在使用Java开发的大多数都是web应用,这些应用几乎全都是基于 B/S 架构进行开发的。
那么在 B/S 架构中,应用系统标准的三层架构分为:表现层、业务层、持久层。这种三层架构在
我们的实际开发中使用的非常多,所以我们课程中的案例也都是基于三层架构设计的。
JavaEE制定了一套规范,去进行BS结构的处理。这套规范就是Servlet.
二、应用系统三层架构
2.1 表现层:
也就是我们常说的web 层。
- 它负责接收客户端请求,向客户端响应结果,通常客户端使用http 协议请求web 层,web 层
需要接收 http 请求,完成 http 响应。 - 表现层包括展示层和控制层:控制层负责接收请求,展示层负责结果的展示。
- 表现层依赖业务层,接收到客户端请求一般会调用业务层进行业务处理,并将处理结果响应
给客户端。 - 表现层的设计一般都使用 MVC 模型。(MVC 是表现层的设计模型,和其他层没有关系)
2.2 业务层:
也就是我们常说的 service 层。
- 它负责业务逻辑处理,和我们开发项目的需求息息相关。web 层依赖业务层,但是业务层不
依赖 web 层。 - 业务层在业务处理时可能会依赖持久层,如果要对数据持久化需要保证事务一致性。(也就
是我们说的, 事务应该放到业务层来控制)
2.3 持久层:
也就是我们是常说的 dao 层。
- 负责数据持久化,包括数据层即数据库和数据访问层,数据库是对数据进行持久化的载体,
数据访问层是业务层和持久层交互的接口,业务层需要通过数据访问层将数据持久化到数据
库中。 - 通俗的讲,持久层就是和数据库交互,对数据库表进行曾删改查的。
三、 MVC设计模式
MVC 是模型(model)-视图(view)-控制器(controller)的缩写, 是一种用于设计编写 Web 应用程序
表现层的模式。
MVC 设计模式的三大角色:
- Model(模型):
模型包含业务模型和数据模型,数据模型用于封装数据,业务模型用于处理业务。 - View(视图):
通常指的就是我们的 jsp 或者 html。作用一般就是展示数据的。
通常视图是依据数据模型创建的。 - Controller(控制器):
是应用程序中处理用户交互的部分。作用一般就是处理程序逻辑的。
四、 SpringMVC介绍
4.1 SpringMVC是什么
- SpringMVC 是一种基于MVC 设计模型的请求驱动类型的轻量级 Web 框架,属于
SpringFrameWork 的后续产品,已经融合在 Spring Web Flow 里面。Spring 框架提供了构建
Web 应用程序的全功能 MVC 模块。 - 使用 Spring 可插入的 MVC 架构,从而在使用 Spring 进行 WEB 开发时,可以选择使用 Spring 的
Spring MVC 框架或集成其他 MVC 开发框架,如 Struts1(现在一般不用),Struts2 等。 - SpringMVC 已经成为目前最主流的 MVC 框架之一,并且随着 Spring3.0 的发布,全面超越
Struts2,成为最优秀的 MVC 框架。 - 它通过一套注解,让一个简单的 Java 类成为处理请求的控制器,而无须实现任何接口。同时它还
支持RESTful 编程风格的请求。
4.2 SpringMVC与Spring的联系
Spring MVC 全名叫 Spring Web MVC ,它是 Spring家族Web模块 的一个重要成员。这一点,我们可以
从 Spring 的整体结构中看得出来:
4.3 六大组件介绍
六大组件(MVC组件其他三大组件)说明:
- 在 springmvc 的各个组件中,前端控制器、处理器、视图称为 springmvc 的MVC组件
- 在 springmvc 的各个组件中,处理器映射器、处理器适配器、视图解析器称为 springmvc
的三大组件 - 需要开发的组件有:处理器、视图
- Handler:处理器
Handler 是继DispatcherServlet前端控制器的后端控制器,在DispatcherServlet的控制下
Handler对具体的用户请求进行处理。
由于Handler涉及到具体的用户业务请求,所以一般情况需要程序员根据业务需求开发Handler。 - View:视图
springmvc框架提供了很多的View视图类型的支持,包括:jstlView、freemarkerView、
pdfView等。我们最常用的视图就是jsp。
一般情况下需要通过页面标签或页面模版技术将模型数据通过页面展示给用户,需要由程序员根据业务需求开发具体的页面。