@RequestParam,@PathVariable等注解区别

一、@RequestParam和@PathVariable的区别

1、@RequestParam是从uri中request后面的参数串来取得参数的

2、@PathVariable是从uri模板中取得参数的

例子:

uri:http://localhost:8080/springmvc/hello?param1=10&param2=20

@RequestParam抓取的是后面的param1和param2


@RequestMapping("/hello")
public String getDetails(
    @RequestParam(value="param1", required=true) String param1,
        @RequestParam(value="param2", required=false) String param2){
...
}

uri:http://localhost:8080/springmvc/hello/101?param1=10&param2=20   

@PathVariable抓取的是模板中的101

@RequestMapping("/hello/{id}")
    public String getDetails(@PathVariable(value="id") String id,
    @RequestParam(value="param1", required=true) String param1,
    @RequestParam(value="param2", required=false) String param2){
.......
}

 

二、@ResponseBody   @RequestBody

@ResponseBody

responseBody表示服务器返回的时候以一种什么样的方式进行返回, 将内容或对象作为 HTTP 响应正文返回,值有很多,一般设定为json

@RequestBody

一般是post请求的时候才会使用这个请求,把参数丢在requestbody里面

 

posted @ 2018-08-10 12:16  彩电  阅读(163)  评论(0编辑  收藏  举报