一、什么是 Spring Web MVC?
1. 定义
Spring Web MVC 是基于 Servlet API 构建的 Web 框架,属于 Spring 框架中用于开发 Web 应用的模块。它遵循模型 - 视图 - 控制器(MVC)设计模式,简称 Spring MVC。
Servlet 是 Java 企业级开发的核心技术,负责在 Web 服务器上处理客户端请求并生成动态响应。Servlet 不能独立运行,必须部署在支持 Servlet 规范的容器内。
2. 关于 MVC
2.1 什么是 MVC?
MVC 是一种软件架构模式,广泛应用于 GUI 和 Web 应用开发。它将应用程序逻辑分为三个核心部分,实现关注点分离,提升代码的可维护性、可扩展性和复用性。
MVC 的核心组成:
- 模型(Model):管理数据与业务逻辑,是'数据中心'。例如学生信息、订单数据等。
- 视图(View):负责展示数据,是用户交互的界面。同一个模型可对应多个视图。
- 控制器(Controller):连接模型与视图的桥梁,协调交互,处理核心业务逻辑。
工作流程:
- 用户通过视图发起交互(如点击页面)。
- 控制器接收请求。
- 控制器调用模型处理数据(验证、存储)。
- 模型返回结果给控制器。
- 控制器选择视图并传递数据。
- 视图渲染数据,用户看到最终结果。
简单概括:用户 → 视图 → 控制器 → 模型 → 控制器 → 视图 → 用户
二、学习 Spring MVC
主要涉及三个环节:建立连接(浏览器与 Java)、请求(获取参数)、响应(返回结果)。
1. 项目准备
创建项目 在 IDE 中选择 New Project,点击 Spring Initializr(若无需自行下载),按向导配置项目信息。
注意项目名称只能包含小写字母、数字、连字符、下划线或句号,不能包含大写字母。
后续依次配置 JDK 版本、Group Id、Artifact Id 等信息,添加依赖后完成创建。
启动项目 运行主类启动应用。
建立连接 创建一个 Controller 类,实现用户与浏览器的交互。
@RestController
public class Hello {
@RequestMapping("/sayhello")
public String say() {
return "hello";
}
}
在浏览器访问 http://127.0.0.1:8080/sayhello 查看结果。
127.0.0.1:本地主机地址。8080:Spring Boot 默认端口。/sayhello:请求路径。
2. @RestController 注解介绍
@RestController 相当于给控制器类贴了一个特殊标签,告诉 Spring:这个类里的方法返回的数据直接作为响应内容发给前端,无需跳转页面。


