package com.landtool.lanbase.common.validator;
|
|
import java.util.Set;
|
|
import javax.validation.ConstraintViolation;
|
import javax.validation.Validation;
|
import javax.validation.Validator;
|
|
import com.landtool.lanbase.common.exception.LanbaseException;
|
|
/**
|
* 参考文档:http://docs.jboss.org/hibernate/validator/5.4/reference/en-US/html_single/
|
* @author lanbase
|
* @Description: TODO(hibernate-validator校验工具类)
|
* @date 2017-6-23 15:07
|
*/
|
public class ValidatorUtils {
|
private static Validator validator;
|
|
static {
|
validator = Validation.buildDefaultValidatorFactory().getValidator();
|
}
|
|
/**
|
* 校验对象
|
* @param object 待校验对象
|
* @param groups 待校验的组
|
* @throws LanbaseException 校验不通过
|
*/
|
public static void validateEntity(Object object, Class<?>... groups)
|
throws LanbaseException {
|
Set<ConstraintViolation<Object>> constraintViolations = validator.validate(object, groups);
|
if (!constraintViolations.isEmpty()) {
|
StringBuilder msg = new StringBuilder();
|
for(ConstraintViolation<Object> constraint: constraintViolations){
|
msg.append(constraint.getMessage()).append("<br>");
|
}
|
throw new LanbaseException(msg.toString());
|
}
|
}
|
}
|