【JAVA】Springboot的4种获取请求参数的注解的差异
在Spring Boot中,我们可以使用@RequestParam
、@PathVariable
、@RequestBody
和@RequestHeader
等注解来读取请求参数。
@RequestBody
用于处理请求体中的数据,通常用于POST或PUT请求,并且请求体中包含JSON或XML格式的数据。
@PostMapping("/post")
public String postRequestBody(@RequestBody String body) {
return "Request Body: " + body;
}
@RequestParam
用于处理URL中的查询参数或表单数据,通常用于GET或POST请求,并且参数附加在URL后面。
@GetMapping("/get")
public String getRequestParam(@RequestParam String param) {
return "Param Value: " + param;
}
@RequestHeader
通常获取请求头信息。
@GetMapping("/get")
public String getRequestHeader(@RequestHeader("User-Agent") String userAgent) {
return "User-Agent: " + userAgent;
}
@PathVariable
通常获取URL中的路径变量。
@GetMapping("/get/{variable}")
public String getPathVariable(@PathVariable String variable) {
return "Path Variable: " + variable;
}