获取Request参数
public class StuController {
@GetMapping("{stuId}/get")
public String getStu(@PathVariable("stuId") String stuId,
@RequestParam("name") String name,
@RequestParam Integer id){
/*
* @RequestParam: 用于获得url中的参数,如果参数变量名保持一致,该注解可以省略
* */
log.info("stuId="+stuId);
log.info("name="+name);
log.info("id="+id);
return "查询Stu";
}
/*
* @RequestBody 可以是一个对象也可以是一个Map
* @RequestHeader 获取请求头信息
* */
@PostMapping("create")
public String createStu(@RequestBody Map<String,Object> map,
@RequestHeader("token") String token,
@CookieValue("clientId") String clientId,
HttpServletRequest request){
log.info("map="+map.toString());
log.info("token="+token);
log.info("clientId="+clientId);
String headerToken = request.getHeader("token");
log.info("headerToken="+headerToken);
return "新增Stu";
}
在Spring框架中,处理HTTP请求时,常用的注解用于接收不同类型的参数。以下是这些注解的详细说明:
@RequestParam
用途: 用于接收URL中的查询参数(Query Parameters)。
示例:
@GetMapping("/example")
public String exampleMethod(@RequestParam String name) {
return "Hello, " + name;}当访问 /example?name=John 时,name 参数的值为 "John"。
@PathVariable
用途: 用于接收URL路径中的变量(Path Variables)。
示例:
@GetMapping("/example/{id}")
public String exampleMethod(@PathVariable Long id) {
return "ID: " + id;}当访问 /example/123 时,id 参数的值为 123。
@RequestBody
用途: 用于接收HTTP请求体(Request Body)中的数据,通常用于POST、PUT等请求。
示例:
@PostMapping("/example")
public String exampleMethod(@RequestBody User user) {
return "Received user: " + user.getName();}请求体中的JSON数据会被自动转换为 User 对象。
@RequestHeader
用途: 用于接收HTTP请求头(Request Headers)中的信息。
示例:
@GetMapping("/example")
public String exampleMethod(@RequestHeader("Authorization") String authToken) {
return "Authorization token: " + authToken;
}获取请求头中的 Authorization 字段值。
@CookieValue
用途: 用于接收HTTP请求中的Cookie值。
示例:
@GetMapping("/example")
public String exampleMethod(@CookieValue("sessionId") String sessionId) {
return "Session ID: " + sessionId;
}获取名为 sessionId 的Cookie值。
总结
@RequestParam: 用于接收URL查询参数。
@PathVariable: 用于接收URL路径变量。
@RequestBody: 用于接收请求体中的数据。
@RequestHeader: 用于接收请求头中的信息。
@CookieValue: 用于接收请求中的Cookie值。
这些注解在Spring MVC中非常常用,能够帮助开发者方便地处理不同类型的请求参数。
很清楚了
用于接受参数的注解
@RequestParam:et 用一获得url中的参数
@PathVariable

get请求
@CookieValue,@Header需要使用一下
@RequestBody
