Add ValidationUtils

pull/98/head
johnniang 2019-02-20 23:21:31 +08:00
parent 45bee68c41
commit ee41a620f0
1 changed files with 93 additions and 0 deletions

View File

@ -0,0 +1,93 @@
package cc.ryanc.halo.utils;
import org.springframework.util.CollectionUtils;
import org.springframework.validation.FieldError;
import javax.validation.ConstraintViolation;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
*
*
* @author johnniang
*/
public class ValidationUtils {
private ValidationUtils() {
}
/**
* mapkey:value = field:message
*
* @param constraintViolations constraint violations(contain error information)
* @return null
*/
public static Map<String, String> mapWithValidError(Set<ConstraintViolation<Object>> constraintViolations) {
Map<String, String> errMap = null;
if (!CollectionUtils.isEmpty(constraintViolations)) {
// if not empty
errMap = new HashMap<>(4);
for (ConstraintViolation<Object> constraintViolation : constraintViolations) {
errMap.put(constraintViolation.getPropertyPath().toString(), constraintViolation.getMessage());
}
}
return errMap;
}
public static String stringWithValidError(Set<ConstraintViolation<?>> violations, boolean allError) {
StringBuilder errString = new StringBuilder();
if (!CollectionUtils.isEmpty(violations)) {
for (ConstraintViolation<?> violation : violations) {
if (errString.length() > 0) {
errString.append(",");
}
errString.append(violation.getMessage());
if (!allError && errString.length() > 0) {
return errString.toString();
}
}
}
return errString.toString();
}
/**
* mapkey:value = field:message
*
* @param fieldErrors
* @return null
*/
public static Map<String, String> mapWithFieldError(List<FieldError> fieldErrors) {
Map<String, String> errMap = null;
if (!CollectionUtils.isEmpty(fieldErrors)) {
// 如果不为空
errMap = new HashMap<>(4);
for (FieldError fieldError : fieldErrors) {
errMap.put(fieldError.getField(), fieldError.getDefaultMessage());
}
}
return errMap;
}
public static String stringWithFieldError(List<FieldError> fieldErrors, boolean allError) {
StringBuilder errString = new StringBuilder();
if (!CollectionUtils.isEmpty(fieldErrors)) {
// 如果不为空
for (FieldError fieldError : fieldErrors) {
if (errString.length() > 0) {
errString.append(",");
}
errString.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage());
if (!allError && errString.length() > 0) {
return errString.toString();
}
}
}
return errString.toString();
}
}