【JavaEE进阶】 @RequestMapping注解

文章目录

  • [🎄什么是@RequestMapping 注解](#🎄什么是@RequestMapping 注解)
  • [🌳@RequestMapping 使⽤](#🌳@RequestMapping 使⽤)
  • [🌲@RequestMapping 是GET还是POST请求?](#🌲@RequestMapping 是GET还是POST请求?)
  • ⭕总结

🎄什么是@RequestMapping 注解

在Spring MVC 中使⽤ @RequestMapping 来实现 URL 路由映射 ,也就是浏览器连接程序的作⽤

我们先来看看代码怎么写

创建⼀个 TalkController 类,实现⽤⼾通过浏览器和程序的交互,具体实现代码如下:

java 复制代码
package org.example.springmvc.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class TalkController {
    @RequestMapping("/hi")
    public String hi() {
        return "hi 遇事问春风乄";
    }
}

这时候我们使用浏览器访问 http://127.0.0.1:8080/hi 就可访问

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

表⽰服务收到请求时,路径为/sayHi的请求就会调⽤hi这个⽅法的代码.

路由映射:当⽤⼾访问⼀个URL时,将⽤⼾的请求对应到程序中某个类的某个⽅法的过程就叫路由映射

🌳@RequestMapping 使⽤

@RequestMapping 即可修饰类,也可以修饰⽅法,当修饰类和⽅法时,访问的地址是

  • 类路径 + ⽅法路径.

@RequestMapping标识⼀个类:设置映射请求的请求路径的初始信息

@RequestMapping标识⼀个⽅法:设置映射请求请求路径的具体信息

比如以下代码:

java 复制代码
package org.example.springmvc.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RequestMapping("/talk") //类路径为:/talk
@RestController
public class TalkController {
    @RequestMapping("/hi") //方法路径为:/hi
    public String hi() {
        return "hi 遇事问春风乄" ;
    }
}

我们在进行访问时就需要输入 http://127.0.0.1:8080/talk/hi

注意:

  • @RequestMapping 的URL 路径最前⾯加不加 / (斜杠) 都可以,Spring程序启动时,会进⾏判断,如果前⾯没有加 / ,Spring会拼接上⼀个 /
  • 建议最好加上

🌲@RequestMapping 是GET还是POST请求?

通过以上案例, 可以看出来 @RequestMapping ⽀持get请求.,那么@RequestMapping 是否支持POST请求

🚩使用Postman构造POST请求

这里博主使用一个工具 Postman 来进行构造 POST 请求,直接官网下载就好

构造请求步骤如下:

  • 第一步
  • 第二步

页面相关介绍如下:

接下来我们构造一个POST请求来进行发送

我们发现依旧是可以进行访问的。

那么问题来了,如果我只想让那个请求是 POST 请求 或者 GET 请求呢?

我们该怎么做呢?

其实做法很简单,写法如下

这时候你用 Postman 构造 get 请求时,就会出现以下情况

当我们使用浏览器访问时则会出现

如此一来就实现了只能允许一种请求访问的效果。

⭕总结

关于《【JavaEE进阶】 @RequestMapping注解》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!

相关推荐
我爱Jack18 分钟前
深入解析 LinkedList
java·开发语言
27669582922 小时前
tiktok 弹幕 逆向分析
java·python·tiktok·tiktok弹幕·tiktok弹幕逆向分析·a-bogus·x-gnarly
用户40315986396632 小时前
多窗口事件分发系统
java·算法
用户40315986396632 小时前
ARP 缓存与报文转发模拟
java·算法
小林ixn2 小时前
大一新手小白跟黑马学习的第一个图形化项目:拼图小游戏(java)
java
nbsaas-boot2 小时前
Go语言生态成熟度分析:为何Go还无法像Java那样实现注解式框架?
java·开发语言·golang
javadaydayup2 小时前
别再逐个注入了!@Autowired 批量获取接口实现类的核心逻辑拆解
spring
hi0_62 小时前
03 数组 VS 链表
java·数据结构·c++·笔记·算法·链表
朝如青丝暮成雪_2 小时前
java的三大特征
java
用户0595661192092 小时前
Java 8 + 特性与 spring Boot 及 hibernate 等最新技术实操内容全解析
java·架构·设计