下面說一下簡單的JSR303資料校驗:有挺多的校驗注解,在這裡我就簡單的講一個,其他的注解用法都是一樣的:
下面說一下 @Email這個擴充注解:主要是驗證你輸入的email格式是否是正确的
1.最先是導入依賴:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>4.3.1.Final</version>
</dependency>
然後,再往你的springmvc.xml配置檔案添加:
<mvc:annotation-driven></mvc:annotation-driven>
2.首先 先在我的實體類裡面定義一個Email屬性:
@Email(message = "郵箱格式不正确") //它會幫你自動驗證,如果你輸入的eamil格式有誤,那麼就會傳回“郵箱格式不正确”
private String email;
3.然後,再去我的controller裡去看看:
@RequestMapping("register") //記住,必須加@Valid
public String register(@Valid Person person, BindingResult result){ //記住,這個BindingResult就是你傳回的驗證不通過的結果集
//先得到你的Email:
System.out.println(person.getEmail());
//根據result點出所有的錯誤
List<ObjectError> allErros=result.getAllErrors();
if(allErros.size()>0){
//有驗證不通過:列印出錯誤的驗證資訊
for (ObjectError allErro : allErros) {
System.out.println(allErro.getDefaultMessage());
}
}
return "success";
}
4.再看看我的表單送出:
<form action="/register.action" method="post">
郵箱:<input type="text" name="email"> <br/>
<input type="submit" value="送出">
</form>
然後就可以實作簡單的驗證了。
還有挺多的注解,我這裡就不說了:
我覺得特别一點的就是這兩個了:
@Null (必須為空)
@NotNull(必須不為空)