数组集合参数
-
数组参数:请求参数名与形参数组名称相同且请求参数为多个,定义数组类型形参即可接收参数。
@RequestMapping("/arrayParam") public String arrayParam(String[] hobby) { for (String s : hobby) { System.out.println(s); } return "arrayParam: " + Arrays.toString(hobby); }
-
集合参数:请求参数名与形参集合名称相同且请求参数为多个,
@RequestParam
绑定参数关系。@RequestMapping("listParam") public String listParam(@RequestParam List<String> hobby) { for (String s : hobby) { System.out.println(s); } return "listParam: " + hobby; }
-
日期参数:使用
@DateTimeFormat
注解完成日期参数格式转换@RequestMapping("/dateParam") public String dateParam(@DateTimeFormat(pattern = "yyyy-MM-dd") Date date) { System.out.println(date); return "dateParam: " + date; }
-
JSON参数:JSON数据键名与形参对象属性名相同,定义POJO类型形参即可接收参数,需要使用
@RequestBody
标识@RequestMapping("/jsonParam") public String jsonParam(@RequestBody User user) { System.out.println(user); return "jsonParam: " + user; }
-
路径参数:通过请求URL直接传递参数,使用
{...}
来标识该路径参数,需要使用@PathVariable
获取路径参数@RequestMapping("/path/{id}") public String pathParam(@PathVariable Integer id) { System.out.println(id); return "pathParam: " + id; }
-
传递多个参数
@RequestMapping("/path/{id}/{name}") public String pathParam(@PathVariable Integer id, @PathVariable String name) { System.out.println(id + " " + name); return "pathParam: " + id + " " + name; }
-