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) {
    // 处理逻辑
}

你可能感兴趣的:(#,java,#,spring,后端,spring,boot,后端,java)