考虑以下映射:
@RequestMapping(value = "/superDuperPage", method = RequestMethod.GET)
public String superDuperPage(@RequestParam(value = "someParameter", required = true) String parameter)
{
return "somePage";
}
我想通过 不 添加 required = false
来处理丢失的参数情况。默认情况下,返回 400
错误,但我想返回一个不同的页面。我怎样才能做到这一点?
原文由 peech 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果请求中不存在必需的
@RequestParam
,Spring 将抛出MissingServletRequestParameterException
异常。您可以在同一控制器或@ExceptionHandler
中定义@ControllerAdvice
来处理该异常:正如 Spring 文档 所述: