Spring MVC中@RequestBody和@PathVariable使用解释
1.@RequestBody
作用:
将HTTP请求体(如JSO/XML)反序列化为Java对象
使用场景:
接收前端提交的复杂数据(如POST/PUT请求中的表单或JSON)
2.@PathVariable 使用流程
作用:从 URL 路径中提取动态参数(RESTful 风格)。
适用场景:例如根据 ID 查询资源 /users/{id}。
步骤:
定义 URL 模板:在 @GetMapping、@PostMapping 等注解的路径中用 {变量名} 占位。
绑定参数:在方法参数中使用 @PathVariable 注解绑定变量。
3.注意事项
- @PathVariable 必须匹配 URL 模板:
变量名默认与方法参数名一致,若不一致需显式指定,如@PathVariable("orderId")。 - @RequestBody 要求请求头包含 Content-Type:
通常为application/json,确保 Spring 能正确解析请求体。 - GET 请求不支持 @RequestBody:
GET 请求没有请求体,强制使用会报405 Method Not Allowed。
浙公网安备 33010602011771号