【 Spring MVC 核心功能(一) - 使用注解实现 URL 路由映射】

文章介绍了SpringMVC中用于处理HTTP请求的注解,如@RequestMapping用于处理GET和POST请求,而@GetMapping和@PostMapping则专门针对GET和POST请求。通过类和方法上的注解配合,可以实现URL路由映射。文章还展示了如何使用Postman进行测试验证请求类型的效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

引言

前面我们讲到,学习 Spring MVC 需要掌握三个核心功能即连接,获取参数,输出数据。下面我们来学习连接功能.如何实现呢?将 MVC项目创建好之后,可以使⽤ @RequestMapping 等一系列注解来实现 URL 路由映射,也就是浏览器连接程序的作⽤

一、@RequestMapping 注解介绍

@RequestMapping 是 Spring Web 应⽤程序中最常被⽤到的注解之⼀,它是⽤来注册接⼝的路
由映射的

路由映射:所谓的路由映射指的是,当⽤户访问⼀个 url 时,将⽤户的请求对应到程序中某个类的某个⽅法的过程就叫路由映射

@RequestMapping 基础使⽤:

@Controller
@ResponseBody
//我们可以使用组合注解 @RestController 来代替上述两个注解,效果一样
//@RestController
@RequestMapping("/user")
public class TestController {
    @RequestMapping("/sayhello")
    public String sayhello() {
        return "hello !!!good";
    }
}

@RequestMapping 可以同时修饰类和方法,当修饰类和⽅法时,访问的地址是类 + ⽅法。它也可以直接修饰⽅法,访问地址就是方法


1.1 @RequestMapping 是 post 还是 get 请求?

  1. @RequestMapping 默认是支持 get,post 两种⽅式的请求,可以使⽤ postman 进⾏测试

使用 get 请求:
在这里插入图片描述

使用 post 请求:
在这里插入图片描述

1.2 @RequestMapping 指定一种请求方式

  1. 那当我们想要指定某一个 请求方式呢?
    我们可以显示的指定 @RequestMapping 来接收特定方式请求,如下:
@RequestMapping(method = RequestMethod.POST, value = "/sayhi")
    public String sayhi() {
        return "hello world !";
    }

再次使用 postman 发送 get 请求测试,如下:

在这里插入图片描述

上述结果表名,当我们显示指定一种请求方式时,另一种请求方式就不支持了,会报错!

通过显示指定,同样可以指定 get 方式请求,我们就不举例了。那是否还有其他方式指定某一请求方式呢?答案是肯定的的!!


二、@GetMapping

@GetMapping 注解只支持 get 方式的请求

代码示例:

 //设置只支持 get 请求
    @GetMapping("/sayhi2")
    public String sayhi2() {
        return "hello world 2 !";

使用 postman 测试如下:
在这里插入图片描述

当我们改成 post 方式就会报错 !!

三、@PostMapping

@PostMapping 只支持 post 方式的请求

代码示例:

//设置只支持 post 请求
    @PostMapping("/sayhi1")
    public String sayhi1() {
        return "hello world 1 !";
    }

使用 postman 测试如下:

在这里插入图片描述

同样,此时使用 get 方式请求就会报错 !!


四、总结

get 请求的 3 种写法:

// 写法1
@RequestMapping("/index")
// 写法2
@RequestMapping(value = "/index",method = RequestMethod.GET)
// 写法3
@GetMapping("/index")

post 请求的 3 种写法:

// 写法1
@RequestMapping("/index")
// 写法2
@RequestMapping(value = "/index",method = RequestMethod.POST)
// 写法3
@PostMapping("/index")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值