@RequestParam与@PathVariable为spring的注解,均可以用于在Controller层接收前端传递的数据,不过二者的应用场景不一样。前端
@PathVariable主要用于接收http://host:port/path/{参数值}数据。@RequestParam主要用于接收http://host:port/path?参数名=参数值数据,这里后面也能够不跟参数值。java
//@PathVariable用法 @RequestMapping(value = "/test/{id}",method = RequestMethod.DELETE) public Result test(@PathVariable("id")String id)
//@RequestParam用法,注意这里请求后面没有添加参数 @RequestMapping(value = "/test",method = RequestMethod.POST) public Result test(@RequestParam(value="id",required=false,defaultValue="0")String id)
注意上面@RequestParam用法当中的参数。spring
value表示接收数据的名称。app
required表示接收的参数值是否必须,默认为true,既默认参数必须不为空,当传递过来的参数可能为空的时候能够设置required=false。ui
此外还有一个参数defaultValue 表示若是这次参数未空则为其设置一个默认值。code