1、问题
请求接口失败,查看日志出现WARN:Required request parameter 'xx' for method parameter type Integer is present but converted to null
问题是出在与前端交互层Controller
原代码:
@GetMapping("/page")
public PageBean page(@RequestParam(name = "name") String name,
@RequestParam(name = "xx") Integer xx,
@RequestParam(name = "xx1") Integer xx1,
@RequestParam(name = "page", defaultValue = "1") Integer page,
@RequestParam(name = "pageSize", defaultValue = "5") Integer pageSize) {
PageBean pageBean = studentService.page(name, xx, xx1, page, pageSize);
return pageBean;
}
2、解决方案
核心原因是:前端传递了参数 xx,但其值为空字符串("")或无法转换为 Integer,代码中 @RequestParam 默认要求该参数必须存在且有效
解决方案:允许参数为null,即在@RequestParam中加个属性 required = false
@GetMapping("/page")
public PageBean page(@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "xx", required = false) Integer xx,
@RequestParam(name = "xx1", required = false) Integer xx1,
@RequestParam(name = "page", defaultValue = "1") Integer page,
@RequestParam(name = "pageSize", defaultValue = "5") Integer pageSize) {
PageBean pageBean = studentService.page(name, xx, xx1, page, pageSize);
return pageBean;
}
437



被折叠的 条评论
为什么被折叠?



