zl程序教程

您现在的位置是:首页 >  其他

当前栏目

SpringMVC注解@RequestParam全面解析

2023-04-18 16:28:05 时间

在此之前,写项目一直用的是@RequestParam(value="xx" required=false)这个注解,但是并不知道它的意思。现在懂了,特来记录下。

1、可以对传入参数指定参数名

@RequestParam String inputStr  
 //下面的对传入参数指定为aa,如果前端不传xx参数名,会报错  
 @RequestParam(value="xx") String inputStr

2、可以通过required=false或者true来要求@RequestParam配置的前端参数是否一定要传

// required=false表示不传的话,会给参数赋值为null,required=true就是必须要有  
 @RequestMapping("testRequestParam")    
 public String filesUpload(@RequestParam(value="xx", required=true) String inputStr, HttpServletRequest request)

3、如果@requestParam注解的参数是int类型,并且required=false,此时如果不传参数的话,会报错。原因是,required=false时,不传参数的话,会给参数赋值null,这样就会把null赋值给了int,因此会报错。

// required=false表示不传的话,会给参数赋值为null,required=true就是必须要有  
 @RequestMapping("testRequestParam")    
 public String filesUpload(@RequestParam(value="xx", required=false) int inputStr, HttpServletRequest request) 
 若是前端页面不传参的话,此处就会报错。当然可以用Integer代替int