目录
1.请求路径参数
(1)@PathVariable
eg.http://192.168.111.111:8080/Demo/control/{id}
@PostMapping("/control/{id}")
public Result example(@PathVariable("id") String param){
//将路径id位置的值赋给param
}
(2)@RequestParam
eg.http://192.168.111.111:8080/Demo/control?paramRequest1=ad¶mRequest1=1
@PostMapping("/control")
public Result example(@RequestParam("paramRequest1") String param1, @RequestParam("entityRequest2") Integer param2){
//将请求参数paramReques1t绑定到param1
//将请求参数paramRequest2绑定到param2
}
2.Body参数
(1)@RequestBody
eg.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(@RequestBody Entity entity){
//将前端传递给后端的json字符串中的数据,赋给Entity中对应的字段
}
(2)无注解
eg.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(Entity entity){
//将前端传递给后端的json字符串中的数据,赋给Entity中对应的字段
}
3.请求头参数
eg1.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(@RequestHeader("User") String user){
//注解方式获取请求头中User的值
}
eg2.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(HttpServletRequest request){
//代码中获取请求头中User的值
request.getHeader("User");
}
4.Cookie参数
eg1.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(@CookieValue("cookieName") String cookie{
//注解方式获取Cookie中Cookie名为cookieName的Cookie
}
eg2.http://192.168.111.111:8080/Demo/control
@PostMapping("/control")
public Result example(HttpServletRequest request){
//代码中获取Cookie中Cookie名为cookieName的Cookie
for (Cookie cookie : request.getCookies()) {
//代码
}
}
注:
- @RequestBody、@PathVariable、@RequestParam可以同时出现在一个方法中
- 一个方法中只能有一个@RequestBody
- 一个方法中可以有多个@PathVariable、@RequestParam