private String password;
@Email(message="非法邮箱!")
private String email;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
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;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public User() {
super();
}
}
Controller中使用@Validated注解开启对参数的校验并指定校验的组,那么只有组相同的属性才会被进行校验(默认全匹配),
@RestController
public class BaseController {
@RequestMapping("/test")
public User test(@Validated(value= {GroupB.class}) User user, BindingResult result) {
if (result.hasErrors()) {
List<ObjectError> errors = result.getAllErrors();
for (ObjectError error : errors) {
System.out.println(error.getDefaultMessage());
}
}
return user;
}
}
演示:
结果:
用户名不能为空!