SpringMVC基础

129 阅读2分钟

Spring MVC是Spring框架的一个重要模块,用于实现Web层的应用程序。它将请求和响应的处理逻辑与业务逻辑分离,使得应用程序更加清晰、易于维护。本文将介绍Spring MVC的基础知识,并通过一个简单的示例来展示如何使用Spring MVC实现一个Web应用程序。

一、Spring MVC架构

Spring MVC架构主要由以下几个部分组成:

  1. DispatcherServlet:前端控制器,负责接收客户端的请求,并将请求分发给相应的处理器。
  2. HandlerMapping:处理器映射器,负责将请求映射到具体的处理器(Controller)。
  3. Controller:处理器,负责处理请求并返回响应。
  4. HandlerAdapter:处理器适配器,负责执行具体的处理器并返回响应。
  5. ViewResolver:视图解析器,负责将响应的逻辑视图名解析为实际的视图(如JSP、HTML等)。
  6. ModelAndView:模型和视图的结合体,用于将处理器的返回值和视图进行拼接。

二、Spring MVC快速入门

下面通过一个简单的示例来展示如何使用Spring MVC实现一个Web应用程序。

1. 创建项目

首先,使用Spring Initializr(基于IDEA)创建一个SpringBoot项目,选择所需的依赖项,如Spring Web、Spring MVC等。

2. 添加配置

在项目的src/main/resources目录下,创建一个名为application.properties的配置文件,添加以下内容:

server.port=8080
spring.mvc.path-matching-mode=strict
spring.resources.static-locations=classpath:/static/

3. 创建实体类

com.example.demo包下创建一个名为User的实体类,表示用户信息。

package com.example.demo;
public class User {
    private String name;
    private int age;
    // 省略getter和setter方法
}

4. 创建控制器

com.example.demo.controller包下创建一个名为UserController的控制器类,用于处理用户相关的请求。

package com.example.demo.controller;
import com.example.demo.User;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class UserController {
    @RequestMapping("/addUser")
    @ResponseBody
    public String addUser(User user) {
        return "添加用户成功,用户名:" + user.getName() + ",年龄:" + user.getAge();
    }
}

5. 创建视图

在项目的src/main/resources/static目录下创建一个名为index.html的视图文件,用于显示用户添加表单。

<!DOCTYPE html>
<html>
<head>
    <title>添加用户</title>
</head>
<body>
    <h1>添加用户</h1>
    <form action="/addUser" method="post">
        姓名:<input type="text" name="name" required="required"><br>
        年龄:<input type="number" name="age" required="required"><br>
        <input type="submit" value="提交">
    </form>
</body>
</html>

6. 运行项目

在项目的根目录下,使用Maven或Gradle运行项目。启动成功后,访问http://localhost:8080/index.html,在表单中输入用户信息并提交,即可看到添加用户成功的提示。

三、总结

本文介绍了Spring MVC的基础知识,并通过一个简单的示例展示了如何使用Spring MVC实现一个Web应用程序。通过这个示例,我们可以看到Spring MVC将请求和响应的处理逻辑与业务逻辑分离,使得应用程序更加清晰、易于维护。