SpringMVC中常见用于参数位置的注解

发布时间 2023-04-11 19:13:59作者: just1t

1、@RequestParam:该注解的作用是将请求中指定名称的参数进行获取,可以指定该参数是否为必须,可以是get请求,也可以是post请求,可以该注解可以省略。
实例:

@GetMapping("/addSuccess")
    public String goToSuccess(@RequestParam(name = "skuId") Long skuId, Model model){
        CartItem cartItem = cartService.getItemBySkuId(skuId);
        model.addAttribute("cartItem",cartItem);
        return "success";
    }

2、@RequestBody:该注解的作用是将前端传给后端的JSON格式的请求封装为指定的对象类型,因为get请求没有请求体,所以@RequestBody只适用于POST请求
实例:

@ResponseBody
    @PostMapping("/test")
    public String test(@RequestBody TestObejct testObejct){
        return ""+testObejct;
    }

3、@CookieValue:获取指定cookie的cookie的值

@ResponseBody
    @PostMapping("/test")
    public String test(@CookieValue("cookieName") String s){
        return s;
    }

4、@PathVariable:该注解的作用是将@RequestMapping注解中的请求映射中的restful风格的参数进行获取

@ResponseBody
    @PostMapping("/test/{param}")
    public String test(@PathVariable("param") String param){
        return param;
    }