我需要为 /jsp/login 和 /jsp/login?error 设置一个映射请注意,我不能使用 /jsp/login?error=someval 然后检查 param 是否具有该值或默认值。= 在这种情况下不允许在参数之后。这对弹簧可行吗?为了澄清上述内容,我已经将代码如下:@RequestMapping("/jsp/login")public String login(@RequestParam(value = "error", required = false) String error, Map<String, Object> model) { if(error != null && !error.isEmpty()) { model.put("message", "wrong user id or password"); } return "login";}所以请求 /jsp/login 和 /jsp/login?error 都被映射为 error = null as required = false。如果 url 类似于 /jsp/login?error=yes,则错误 != null要求:error != null 即使 /jsp/login?error 没有任何参数值
2 回答
qq_遁去的一_1
TA贡献1725条经验 获得超7个赞
对的,这是可能的
@RequestMapping (value = "/jsp/login", method = RequestMethod.GET)
public String showLoginWindow(@RequestParam(value = "error", required = false) String errorStr) throws LoginException {...}
重要的部分是required = false,所以如果你调用/jsp/loginerrorStr 的值为 null。
慕莱坞森
TA贡献1810条经验 获得超4个赞
是 - 您可以有可选的请求参数。
@RequestMapping(value = "/jsp/login", method = RequestMethod.GET)
public @ResponseBody String handleLogin(
HttpServletRequest req,
@RequestParam(value="error",required = false) String error) {
//TODO: write your code here
return "success";
}
添加回答
举报
0/150
提交
取消