在SpringMVC控制層獲取參數值的方式主要有兩種,一種是request.getParameter(“name”),另外一種是用註解@RequestParam直接獲取。
@Requestparam :映射請求的參數;
required:表示是否必須,默認爲true;
defaultValue:請求參數的默認值。
解析:
1.可以對傳入的參數指定參數名。
//指定傳入的參數名必須爲par_id,如果前端傳的參數名不是par_id,會報錯。
@RequestMapping(value = "/query_personnel_list")
@ResponseBody
public Object QueryMyGroupPersonnel(@RequestParam("par_id")String par_id){
2、可以通過required=false或者true來要求:@RequestParam配置的前端參數是否一定要傳 // required=false表示不傳,會給參數賦值爲null,required=true就是必須要傳參數,參數不能爲空。 @RequestMapping("queryList")
@ResponseBody public String queryList(@RequestParam(value="userId", required=true) String userId)
3、如果@requestParam註解的參數是int類型,並且required=false,此時如果不傳參數的話,會報錯。原因是,required=false時,不傳參數的話,會給參數賦值null,這樣就會把null賦值給了int,因此會報錯。
// required=false表示不傳的話,會給參數賦值爲null,required=true就是必須要有 @RequestMapping("queryList") @ResponseBody public String queryList(@RequestParam(value="userId", required=false) int userId) 若是前端頁面不傳參的話,此處就會報錯。當然可以用Integer代替int