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) {

// 处理逻辑

}

相关推荐
葫芦和十三15 小时前
图解 MongoDB 04|索引模型:每建一个索引,就是在 B+-tree 森林里多栽一棵
后端·mongodb·agent
用户479492835691516 小时前
claude Fable用不了?把Gpt 5.5pro接到你的claude code里
前端·后端
GetcharZp18 小时前
告别 Nginx 复杂配置!这款带 Web 面板的万能代理神器,让端口转发变得如此简单
后端
IT_陈寒20 小时前
React的useState居然还有这种坑?我差点删库跑路
前端·人工智能·后端
nanxun88621 小时前
记一次诡异的 Docker 容器"串包"故障排查
java
Pedantic21 小时前
SwiftUI 手势笔记
前端·后端
金銀銅鐵21 小时前
[Python] 从《千字文》中随机挑选汉字
后端·python
用户1563068103511 天前
Day01 | Java 基础(Java SE)
java
飘尘1 天前
前端转型全栈(Java后端)的快速上手指引
前端·后端·全栈