Validator自动验证与手动验证

自动:

public JResult projectAdd(@Valid Project project, BindingResult result) {Map<String,Object> map = new HashMap<>();
if (result.hasErrors()) {
List<FieldError> errs = result.getFieldErrors();
String mapErrors = "";
for (FieldError err : errs) {
mapErrors += err.getDefaultMessage() + ",";
}
mapErrors = mapErrors.substring(0, mapErrors.length() - 1);
map.put("message",mapErrors);
return new JResult(Constants.CODE_VALIDATION, mapErrors, map);
}

手动:
Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
Set<ConstraintViolation<Object>> constraintViolations = validator
.validate(contactPerson);//验证某个对象,,其实也可以只验证其中的某一个属性的
Iterator<ConstraintViolation<Object>> iter = constraintViolations
.iterator();
List<String> error = new ArrayList<>();
while (iter.hasNext()) {
String message = iter.next().getMessage();
error.add(message);
}
 
原文地址:https://www.cnblogs.com/jaxlove-it/p/8532445.html