如何简单实现一个自定义校验注解。
validator实现了java的校验器API,里面提供了很多校验器注解,但是有时候这些注解不能满足我们的业务校验。
validator也提供了自定义注解的接口,我们只要继承这个接口,并且实现它的方法,就能完成一个简单的自定义注解
注解类
packagecom.custom;importjavax.validation.Constraint;importjavax.validation.Payload;importjava.lang.annotation.Retention;importjava.lang.annotation.Target;import static java.lang.annotation.ElementType.*;import staticjava.lang.annotation.RetentionPolicy.RUNTIME;
//这个注解能使用在哪里
@Target({ METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER })
//这个注解什么时候执行
@Retention(RUNTIME)
//这个注解对应的校验器类,(这个类一般实现了校验器接口)
@Constraint(validatedBy= { ParamNotNullValidator2.class})public @interfaceParamNotNull2 {
//异常消息
String message()default "参数不能为空----自定义注解";
//剩下的自己按需要加
Class>[] groups() default{ };
Class extends Payload>