文章目录
- 一、初始 Spring MVC
- 1.1 回顾 MVC 模式
- 1.2 回顾 Servlet
一、初始 Spring MVC
-
什么是 Spring MVC
-
Spring MVC就是一个 Spring 内置的 MVC 框架。
MVC框架,它解决WEB开发中常见的问题(参数接收、文件上传、表单验证、国际化等等),而且使用简单,与Spring无缝集成。支持 RESTful风格的URL请求。
采用了松散耦合可插拔组件结构,比其他 MVC 框架更具扩展性和灵活性。
-
-
Spring MVC 的作用
-
MVC模式(Model-View-Controller):解决页面代码和后台代码的分离。
-
-
Spring MVC 的原理
-
在没有使用 Spring MVC 之前我们都是使用 Servlet 在做 Web 开发。但是使用 Servlet 开发在接收请求参数,数据共享,页面跳转等操作相对比较复杂。Servlet 是 java 进行 web 开发的标准,既然 Spring MVC 是对 Servlet 的封装,那么很显然 Spring MVC 底层就是Servlet,Spring MVC 就是对 Servlet 进行深层次的封装
-
1.1 回顾 MVC 模式
MVC 是模型(Model),视图(View),控制器(Controller)的简写,是一种软件设计的代码规范,将业务逻辑、数据以及显示完全分离开来。MVC 并不是一种设计模式,MVC 是一种结构模式。 并且不同的 MVC 之间也是存在着差异的。
-
Model(模型):
数据模型,提供要展示的数据,因此包含数据和行为,可以认为是领域模型或JavaBean组件(包含数据和行为),不过现在一般都分离开来:Value Object(数据Dao) 和 服务层(行为Service)。也就是模型提供了模型数据查询和模型数据的状态更新等功能,包括数据和业务。
-
View(视图):
负责进行模型的展示,一般就是我们见到的用户界面,客户想看到的东西。
-
Controller(控制器):
接收用户请求,委托给模型进行处理(状态改变),处理完毕后把返回的模型数据返回给视图,由视图负责展示。也就是说控制器做了个调度员的工作。
-
职责分析:
-
Controller:控制器
-
取得表单数据
-
调用业务逻辑
-
转向指定的页面
-
-
Model:模型
-
业务逻辑
-
保存数据的状态
-
-
View:视图
- 显示页面
-
- MVC 模式的主要作用: 降低视图与业务逻辑之间的双向耦合
最典型的 MVC 就是 JSP + servlet + javabean 的模式。
1.2 回顾 Servlet
-
代码示例
-
创建 maven 项目,以此项目为父项目,在父项目的 pom.xml 中导入相关依赖
<dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.9.RELEASE</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.2</version> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> </dependencies>
-
-
在父项目上右键创建子项目,创建完成之后,在子项目上右键选中 Add framework support 找到 Web Application 勾选上
-
具体步骤
-
勾选完之后项目会出现 web 目录
-