@RequestParam加与不加的区别

最简单的两种写法,加或不加@RequestParam注解

复制代码
@RequestMapping("/list")
public String test(int userId) {
  return "list";
}
@RequestMapping("/list")
public String test(@RequestParam int userId) {
  return "list"; }
复制代码

区别: 

  • 第一种写法参数为非必传,第二种写法参数为必传。参数名为userId。
  • 第二种写法可以通过@RequestParam(required = false)设置为非必传。因为required值默认是true,所以默认必传。
  • 第二种写法可以通过@RequestParam("userId")或者@RequestParam(value = "userId")指定参数名。
  • 第二种写法可以通过@RequestParam(defaultValue = "0")指定参数默认值

用法如下:

@RequestMapping("/list")
public String test(@RequestParam(value = "userId", defaultValue = "0", required = false) int userId) {
  return "list";
}
posted on 2020-03-31 20:07  java_langer  阅读(443)  评论(0编辑  收藏  举报