Hibernate Validator常用注解(图网上找的)
2.自定义校验器
a.注解类
@Target({FIELD, METHOD, PARAMETER, ANNOTATION_TYPE})
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = PasswordValidator.class)
public @interface Password {
/**
* 默认错误消息
*
* @return
*/
String message() default "密码过于简单";
/**
* 分组
*
* @return
*/
Class>[] groups() default {};
/**
* 负载
*
* @return
*/
Class extends Payload>[] payload() default {};
/**
* 指定多个时使用
*/
@Target({FIELD, METHOD, PARAMETER, ANNOTATION_TYPE})
@Retention(RUNTIME)
@Documented
@interface List {
Password[] value();
}
}
b.验证器
public class PasswordValidator implements ConstraintValidator {
@Override
public void initialize(Password constraintAnnotation) {
}
@Override
public boolean isValid(String value, ConstraintValidatorContext context) {
return StringUtils.isEmpty(value) || ValidateUtils.validatePassword(value);
}
}c
c.校验工具类
/**
* 校验工具类
*/
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public final class ValidateUtils {
public static final String[] IMG_FILE_TYPE = {".png", ".jpg"};<