如何在JSP中配置Spring MVC中的验证检查?

问题描述 投票:1回答:1

我需要有关Spring MVC中验证检查的快速帮助。我有一个基本的HTML表单而不是JSTL标签表单。如何在Spring MVC中检查或实施直接数据验证检查?我现在想到的一种方法是使用正则表达式来验证用户名是字母数字[a-zA-Z0-9]

但我见过人们用Validator做这个工作。我想使用Validator,因为它似乎更专业。

第二个问题,

我正在尝试让异常处理正常工作,但它无法正常工作。我希望绝对的基本响应发生,the response throws a HTTP.404响应。我的简单方法:

 @RequestMapping(value="/request/view/{id}",method=RequestMethod.GET)
    public String requestSubmit(Model model)

现在我的响应字符串,我该怎么办?在Stackoverflow上搜索之后。他们说要创建一个通用类,如NotFoundException,并扩展它RunTimeException。但是我仍然不知道如何将故意设置为404或实际上任何其他响应,甚至Http.BANDWIDTH_EXCEEEDED_RESPONSE

java spring hibernate spring-mvc jsp
1个回答
1
投票

你应该知道的第一件事:在表单提交中使用POST而不是GET会更好。因为当你使用GET时,所有你的model属性作为url参数发送,这不是一个好习惯。

要使用验证,您可以使用@Valid

public String requestSubmit(@Valid Model model)

然后你可以在@NotNull类的每个属性上使用像@SizeModel,...这样的验证注释来验证它。

当用户提交表单时,如果每个表单属性都有验证问题,spring会自动抛出MethodArgumentNotValidException。要获得验证错误,您可以在控制器中使用try-catch块,或者更好的方法是使用@ControllerAdvice中央异常处理程序。

© www.soinside.com 2019 - 2024. All rights reserved.