SpringBoot接收参数的几种常用方式
在Spring Boot中,接收参数的常见方式有以下几种:
- 通过
@RequestParam
接收查询参数(Query parameter)。 - 通过
@PathVariable
接收路径参数(Path variable)。 - 通过
@RequestBody
接收请求体(Request body)中的JSON或XML数据,通常用于POST或PUT请求。 - 通过
@ModelAttribute
接收表单提交的数据,通常用于POST请求。 - 通过
@RequestHeader
接收请求头(Request header)数据。 - 通过
@MatrixVariable
接收路径段的矩阵变量(Matrix variable)。
以下是各种方式的示例代码:
// 1. 通过@RequestParam接收查询参数
@GetMapping("/users")
public String getUsersByName(@RequestParam String name) {
// ...
}
// 2. 通过@PathVariable接收路径参数
@GetMapping("/users/{id}")
public String getUserById(@PathVariable Integer id) {
// ...
}
// 3. 通过@RequestBody接收请求体数据
@PostMapping("/users")
public User createUser(@RequestBody User user) {
// ...
}
// 4. 通过@ModelAttribute接收表单数据
@PostMapping("/users")
public String submitForm(@ModelAttribute User user) {
// ...
}
// 5. 通过@RequestHeader接收请求头数据
@GetMapping("/users")
public String getUsersByHeader(@RequestHeader("Authorization") String auth) {
// ...
}
// 6. 通过@MatrixVariable接收矩阵变量
@GetMapping("/cars/{brand}")
public String getCarModels(@PathVariable String brand, @MatrixVariable Map<String, String> matrixVars) {
// ...
}
注意:@ModelAttribute
通常与表单提交配合使用,而@MatrixVariable
主要用于REST风格的URL设计,在非REST风格的应用中较少使用。
评论已关闭