我正在使用RequestParam注释创建一个可以处理可选参数(在本例中为性别)的rest方法。但性别价值总是被视为空。 (春季版4.0.0)第二个参数被认为是正确的。
示例:http://localhost:8080/bll-0.1/qry/gender/female/age/40
@RequestMapping(value = {"/age/{age}", "/gender/{gender}/age/{age}"}, method = RequestMethod.GET)
public @ResponseBody String getByAge(@RequestParam(value="gender", defaultValue="unknown") String gender, @PathVariable("age") int age) throws Exception {...}
提前致谢。 的Pankaj
答案 0 :(得分:0)
就像Juned在评论中所说的那样,也可以使用@PathVariable作为性别。
public @ResponseBody String getByAge(@PathVariable("gender") String gender, @PathVariable("age") int age) throws Exception {...}
如果您需要可选参数,如果您有请求参数则不会出现问题,那么您的网址应该有点像http://localhost:8080/bll-0.1/qry/age/40?gender=female
,您可以使用@RequestParam
public @ResponseBody String getByAge(@RequestParam(value="gender", defaultValue="unknown") String gender, @PathVariable("age") int age) throws Exception {...}