获取请求头中的值:

获取请求头中的Accept

@GetMapping("/getHead")
@ResponseBody
public void getHead(@RequestHeader("Accept") String accept) {
    System.out.println(accept);
}

获取请求体中的值:

    @RequestMapping(value = "/test",method = RequestMethod.POST)
    public Person getRest(@RequestBody Person person){
        System.out.println(person);
        return person;
    }

获取url路径中的值:

@RequestParam

用在get请求中,案例如下

    @RequestMapping(value = "/test",method = RequestMethod.GET)
    public String getRequest(@RequestParam String dog){
        return dog;
    }

我们来用postman测试一下,一切正常

我们还可以用@RequestParam(name = "xxx")指定传过来的属性,依旧这段代码(多了个指定名字),看代码和结果

    @RequestMapping(value = "/test",method = RequestMethod.GET)
    public String getRequest(@RequestParam(name = "cat") String dog){
        return dog;
    }

@PathVariable

用在rest请求的接口中美滋滋,以get请求为例,为了效果我故意把路径变量和形参不一样,方便理解

    @RequestMapping(value = "/test/{person}",method = RequestMethod.GET)
    public String getRest(@PathVariable(name = "person") String dog){
        return dog;
    }

@CookieValue 

获取cookie的值,与上类似,自己探索吧

@RequestAttribute

获取request设置的属性

@Controller
public class NewController {
    @RequestMapping(value = "/")
    public String test(HttpServletRequest request){
        request.setAttribute("name","li4");
        return "forward:/testAttribute"; //转发到testAttribute页面
    }
    @ResponseBody
    @RequestMapping("testAttribute")
    public String test2(@RequestAttribute("name") String attribute){
        return attribute;
    }
}

  以上为常用的参数注解,如有补充或指出错误,请赐教 

 

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐