
io.gallery.db.util.DataBaseBindingResultUtil Maven / Gradle / Ivy
package io.gallery.db.util;
import org.springframework.validation.BindingResult;
import org.springframework.validation.FieldError;
import org.springframework.validation.ObjectError;
import java.util.*;
/**
* 数据绑定异常工具类
*/
public class DataBaseBindingResultUtil {
private DataBaseBindingResultUtil() {
}
public static Object getErrorMessages(BindingResult bindingResult) {
if (bindingResult == null) {
return null;
}
Map root = new HashMap<>();
if (bindingResult.hasErrors()) {
root.put("success", false);
root.put("globalErrors", getGlobalErrors(bindingResult));
root.put("fieldErrors", getFieldErros(bindingResult));
} else {
root.put("success", true);
}
return root;
}
/**
* 设置全局错误
*
* @param bindingResult BindingResult
* @return List
*/
public static List getGlobalErrors(BindingResult bindingResult) {
List globalErrors = new ArrayList<>();
for (ObjectError oe : bindingResult.getGlobalErrors()) {
globalErrors.add(oe.getDefaultMessage());
}
return globalErrors;
}
/**
* 设置字段属性错误
*
* @param bindingResult BindingResult
* @return Map
*/
public static Map> getFieldErros(BindingResult bindingResult) {
Map> fieldErrors = new HashMap<>();
for (FieldError fe : bindingResult.getFieldErrors()) {
String f = fe.getField();
if (fieldErrors.get(f) != null) {
fieldErrors.get(f).add(fe.getDefaultMessage());
} else {
List list = new LinkedList<>();
list.add(fe.getDefaultMessage());
fieldErrors.put(f, list);
}
}
return fieldErrors;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy