在控制层 Controller 中,有时候写接口会带@RequestParam,有时候也可以不带。
如果带@RequestParam,它一般有三个值,Value,required,defaultValue。
Value: 代表你传参的参数名称,例如 @RequestParam(value="id") Long userId。在这里,你传userId是没有用的,你必须传id,因为value指定了你必须传哪个参数名。当然,你也可以省略value不写,直接写参数名。
required:默认是true,也就是说,你不显示定义required=false,那么你就必须传参
defaultValue:表示默认值的意思,如果你不传参,也可以通过,因为defaultValue起到了作用。
/**
* 通过微信id获得用户个人信息
*/
@RequestMapping(value="getUserInfo")
public @ResponseBody BaseBean getUserInfo(@RequestParam("weiXinId") Long weiXinId,
HttpServletRequest request,HttpServletResponse response)throws Exception{
BaseBean bean = new BaseBean();
try{
User user = weiXinUserService.getUserInfo(weiXinId);
bean.setRows(user);
bean.setStatus(200);
}catch(Exception e){
logger.error("通过微信id获取用户个人信息失败",Commonparam.handle(e));
bean.setStatus(400);
bean.setMsg("获取个人信息失败");
}
return bean;
}