@Requestparam注解剖析

在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






发布了42 篇原创文章 · 获赞 110 · 访问量 21万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章