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

// 处理逻辑

}

相关推荐
kangkang-3 小时前
PC端基于SpringBoot架构控制无人机(三):系统架构设计
java·架构·无人机
界面开发小八哥5 小时前
「Java EE开发指南」如何用MyEclipse创建一个WEB项目?(三)
java·ide·java-ee·myeclipse
ai小鬼头6 小时前
Ollama+OpenWeb最新版0.42+0.3.35一键安装教程,轻松搞定AI模型部署
后端·架构·github
idolyXyz6 小时前
[java: Cleaner]-一文述之
java
一碗谦谦粉6 小时前
Maven 依赖调解的两大原则
java·maven
萧曵 丶6 小时前
Rust 所有权系统:深入浅出指南
开发语言·后端·rust
netyeaxi6 小时前
Java:使用spring-boot + mybatis如何打印SQL日志?
java·spring·mybatis
收破烂的小熊猫~6 小时前
《Java修仙传:从凡胎到码帝》第四章:设计模式破万法
java·开发语言·设计模式
小七mod7 小时前
【MyBatis】MyBatis与Spring和Spring Boot整合原理
spring boot·spring·mybatis
猴哥源码7 小时前
基于Java+SpringBoot的动物领养平台
java·spring boot