①添加相關jar包,其中hibernate-validator是驗證接口的實現:
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.1.0.Final</version>
</dependency>
②在springmvc配置文件中加入<mvc:annotation-driven/>語句。
③在驗證Bean的字段上加上要驗證的註解,這裏已字符串長短爲例子:
@Size(min = 3, max = 10, message = "名字長度在3到20之間!")
private String name;
④在controller中在請求bean前面加上javax.validation的@Valid註解,並且後面緊跟BindingResult對象,在方法中可以如下來處理錯誤信息:
public String login(@javax.validation.Valid User user, BindingResult bindingResult) {
if (bindingResult.hasErrors()) {
return "/user/login";
}
⑤在jsp中可以使用<form:errors/>標籤來顯示錯誤信息,錯誤信息就是Bean裏定義的message內容,jsp如下:
<form:form action="login" modelAttribute="user" method="post">
用戶名:<form:input type="text" path="name"/><form:errors path="name"/>
密 碼:<form:input type="password" path="password"/><form:errors path="password"/>
<button>登錄</button>
</form:form>