【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注解》就讲解到这儿,感谢大家的支持,欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下!

相关推荐
考虑考虑4 分钟前
点阵图更改背景文字
java·后端·java ee
ZHE|张恒12 分钟前
Spring Boot 3 + Flyway 全流程教程
java·spring boot·后端
TDengine (老段)37 分钟前
TDengine 数学函数 CRC32 用户手册
java·大数据·数据库·sql·时序数据库·tdengine·1024程序员节
心随雨下1 小时前
Tomcat日志配置与优化指南
java·服务器·tomcat
Kapaseker1 小时前
Java 25 中值得关注的新特性
java
wljt1 小时前
Linux 常用命令速查手册(Java开发版)
java·linux·python
撩得Android一次心动1 小时前
Android 四大组件——BroadcastReceiver(广播)
android·java·android 四大组件
canonical_entropy1 小时前
Nop平台到底有什么独特之处,它能用在什么场景?
java·后端·领域驱动设计
chilavert3181 小时前
技术演进中的开发沉思-174 java-EJB:分布式通信
java·分布式
不是株2 小时前
JavaWeb(后端进阶)
java·开发语言·后端