Spring Boot中常用的参数传递注解

  1. @RequestParam:用于将请求参数绑定到控制器处理方法的参数上,适用于GET请求。
  2. @PathVariable:用于获取请求URL中的动态参数,适用于RESTful风格的URL。
  3. @RequestBody:用于将请求体中的JSON字符串绑定到控制器处理方法的参数上。
  4. @RequestHeader:用于将请求头中的信息绑定到控制器处理方法的参数上。
  5. @ModelAttribute:用于将请求参数绑定到一个对象上,适用于POST请求。
  6. @RequestAttribute:用于将请求属性绑定到控制器处理方法的参数上。

当你使用了@Param注解来声明参数时,如果使用 #{} 或 {} 的方式都可以。如果不使用@Param注解来声明参数时,必须使用 #{}方式。如果使用 {} 的方式,会报错。

示例代码如下:

// 使用@RequestParam注解传参

@GetMapping("/user")

public String getUser(@RequestParam("id") Long id) {

// 处理逻辑

}

// 使用@PathVariable注解传参

@GetMapping("/user/{id}")

public String getUser(@PathVariable("id") Long id) {

// 处理逻辑

}

// 使用@RequestBody注解传参

@PostMapping("/user")

public String addUser(@RequestBody User user) {

// 处理逻辑

}

// 使用@RequestHeader注解传参

@GetMapping("/user")

public String getUser(@RequestHeader("User-Agent") String userAgent) {

// 处理逻辑

}

// 使用@ModelAttribute注解传参

@PostMapping("/user")

public String addUser(@ModelAttribute User user) {

// 处理逻辑

}

// 使用@RequestAttribute注解传参

@GetMapping("/user")

public String getUser(@RequestAttribute("id") Long id) {

// 处理逻辑

}

相关推荐
caoerzhong2 分钟前
JeeWMS 开源仓库管理系统 GPL-3.0 合规指南:Java WMS 二次开发前必须弄清的授权边界
java·开发语言·开源·vue
LEE3 分钟前
前端转型全栈 01:数据建模,前端最大的盲区
前端·javascript·后端
Sam_Deep_Thinking8 分钟前
单一职责原则:JAVA LocalDate的设计取舍
java·后端·程序员·单一职责原则
杨杨杨大侠17 分钟前
Java 不再需要 JVM?一文看懂 GraalVM Native Image、Substrate VM 与 JDK
java·jvm·java ee
GoGeekBaird19 分钟前
(万字长文拆解云沙箱)让 Agent 从执行代码升级到拥有一个临时Runtime
后端·agent
torin22 分钟前
Javaer转Agent:学习资料篇
后端·agent
Sylvia33.30 分钟前
火星数据体育API|一站式接入足球篮球电竞等18+项目实时数据
java·开发语言·python·websocket·游戏
李少兄36 分钟前
解决 MySQL Lock wait timeout exceeded 报错
java
va学弟37 分钟前
Java 语言特性:泛型(Generics)
java·泛型
SL_staff1 小时前
插单风险的数据闭环治理:JVS-BI 在制造业实时预警中的技术实践
java·数据分析·数据可视化