Spring MVC概念+项目创建+@RequestMappring案例代码

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

Spring MVC概念+项目创建+@RequestMappring案例代码

快到锅里来呀   2023-03-20 我要评论

1. Spring MVC 是什么

  • Spring MVC 是一个 Web 框架
  • Spring MVC 是基于 Servlet API 构建的

2. MVC 和 Spring MVC 的关系

MVC 是 Model View Controller 的缩写, 意思是 “模型 视图 控制器”, 它是一种设计模式, 这种设计模式将软件(项目) 分为三部分: 模型 视图 控制器

在这里插入图片描述

MVC 是一种思想, 而 Spring MVC 是一个具体的实现框架.
Spring MVC 是一个基于 MVC 设计模式和 Servlet API 实现的 Web 项目, 同时 Spring MVC 又是 Spring 框架中的一个 Web 模块, 它是随着 Spring 的诞生而存在的一个框架.

3. Spring MVC 项目创建

基于 Spring Boot 框架添加一个 Spring Web (它使用的就是 Spring MVC) 依赖, 此时项目就变成了 Spring MVC 项目
Spring MVC 项目创建

4. 实现用户和程序的映射

在浏览器输入 URL 地址后, 能够在程序中匹配到相应方法

4.1 方法1: @RequestMapping(“/xxx”)

@RequestMapping 用来注册接口的路由映射的 (路由映射: 指的是当用户访问一个 url 时, 将用户的请求对应到程序中某个类的某个方法的过程就叫做路由映射)

@RequestMapping 可修饰类, 也可以修饰方法. 当修饰类和方法时, 访问的地址是 类 + 方法

@Controller
@RequestMapping("/user")  // 类上的 RequestMapping 可以省略
public class UserController {

    @RequestMapping("/sayhi")
    @ResponseBody   // 作用: 表示的是返回一个非静态页面的数据
    public String sayHi() {
        return "66666";
    }
}

@RequestMapping 也可以直接修饰方法, 代码如下

@Controller
public class UserController {

    @RequestMapping("/sayhi")
    @ResponseBody   // 作用: 表示的是返回一个非静态页面的数据
    public String sayHi() {
        return "66666";
    }
}

4.2 @RequestMapping(method = xxxx, value = “xxx”) 是POST/GET请求

通过使用 Fiddler 和 Postman 可以看出 @RequestMapping 默认情况下, 既支持 POST 请求方式, 也支持 GET 请求方式

RequestMapping 参数扩展 (只支持其他类型的请求方式, 比如 POST 类型的请求)

在这里插入图片描述

4.3 方法2:@PostMapping(“/xxx”)

@Controller
@ResponseBody   // 作用: 表示的是返回一个非静态页面的数据
@RequestMapping("/user")  // 类上的 RequestMapping 可以省略
public class UserController {

    @PostMapping("/sayhi3")
    public String sayHi3() {
        return "9999";
    }
}

4.4 方法3:@GetMapping(“/xxx”)

@Controller
@ResponseBody   // 作用: 表示的是返回一个非静态页面的数据
@RequestMapping("/user")  // 类上的 RequestMapping 可以省略
public class UserController {

    @GetMapping("/sayhi4")
    public String sayHi4() {
        return "8888";
    }
}

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们