在此以前,寫項目一直用的是@RequestParam(value="aa" required=false)這個註解,可是並不知道它的意思。如今懂了,特來記錄下。前端
一、能夠對傳入參數指定參數名app
1 @RequestParam String inputStr 2 // 下面的對傳入參數指定爲aa,若是前端不傳aa參數名,會報錯 3 @RequestParam(value="aa") String inputStr
二、能夠經過required=false或者true來要求@RequestParam配置的前端參數是否必定要傳 ui
1 // required=false表示不傳的話,會給參數賦值爲null,required=true就是必需要有 2 @RequestMapping("testRequestParam") 3 public String filesUpload(@RequestParam(value="aa", required=true) String inputStr, HttpServletRequest request)
三、若是@requestParam註解的參數是int類型,而且required=false,此時若是不傳參數的話,會報錯。緣由是,required=false時,不傳參數的話,會給參數賦值null,這樣就會把null賦值給了int,所以會報錯。spa
1 // required=false表示不傳的話,會給參數賦值爲null,required=true就是必需要有 2 @RequestMapping("testRequestParam") 3 public String filesUpload(@RequestParam(value="aa", required=false) int inputStr, HttpServletRequest request) 4 如果前端頁面不傳參的話,此處就會報錯。固然能夠用Integer代替int