ValidUtil.java 958 Bytes
package com.cjs.site.util.web;

import java.util.ArrayList;
import java.util.List;
import java.util.Set;

import javax.validation.ConstraintViolation;
import javax.validation.Validation;
import javax.validation.Validator;
import javax.validation.ValidatorFactory;

/**
 * 注解式验证
 * 
 * @author tongyufu
 *
 */
public class ValidUtil {

    private static Validator validator;

    static {
        ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
        validator = factory.getValidator();
    }

    /**
     * 校验
     * 
     * @param t 
     * @return 错误消息集合
     */
    public static <T> List<String> validate(T t) {
        Set<ConstraintViolation<T>> constraintViolations = validator.validate(t);
        List<String> messages = new ArrayList<String>();
        for (ConstraintViolation<T> cv : constraintViolations) {
            messages.add(cv.getMessage());
        }
        return messages;
    }
}