- 添加依赖
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>6.0.11.Final</version>
</dependency>
- 被验证类
public class Spitter {
@NotEmpty
@Size(min=5,max=16)
private String firstName;
@NotEmpty
@Size(min=5,max=16)
private String lastName;
@NotEmpty
@Size(min=5,max=16)
private String email;
@NotEmpty
@Size(min=5,max=16)
private String username;
@NotEmpty
@Size(min=5,max=16)
private String password;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "Spitter [firstName=" + firstName + ", lastName=" + lastName + ", email=" + email + ", username="
+ username + ", password=" + password + "]";
}
}
- 控制器验证结果
@RequestMapping(value = "/register",method=RequestMethod.POST)
public String processRegister(@Validated Spitter spitter,BindingResult errors) {
System.out.println("processRegister:" + errors.hasErrors())
if(errors.hasErrors()) {
System.out.println("processRegister Errors:")
for(ObjectError objectError : errors.getAllErrors()) {
System.out.println(objectError.getDefaultMessage())
}
return "error"
}
spittleRepository.save(spitter)
return "redirect:/spittles/" + spitter.getUsername()
}