Skip to content

参考:ValidationUtils 参数校验

Bean 校验

java
import cn.com.digitalhainan.tools.ValidationUtils;

public void validateOrder(OrderCreateDTO dto) {
    ValidationUtils.ValidResult result = ValidationUtils.validateBean(dto);
    if (result.isHasErrors()) {
        throw BusinessException.error(
            XxxOfBusinessExceptionCodeEnum.ERR_INVALID_PARAMS,
            result.getErrors()
        );
    }
}

单个属性校验

java
public void validateEmail(String email) {
    ValidationUtils.ValidResult result = ValidationUtils.validateProperty(
        new UserDTO(email), "email"
    );
    if (result.isHasErrors()) {
        throw BusinessException.error(
            XxxOfBusinessExceptionCodeEnum.ERR_INVALID_PARAMS,
            result.getErrors()
        );
    }
}

ValidationUtils 基于 HibernateValidator,采用非快速失败模式(failFast = false),会收集所有校验错误后一并返回。

Power By 数字海南