美文网首页
spring boot 基于验证自定义验证

spring boot 基于验证自定义验证

作者: smartjiang | 来源:发表于2019-02-26 16:59 被阅读0次

自定义异常主要为首先定义一个注解:

1.自定义注解

@Target({ElementType.FIELD,ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Constraint(validatedBy =ConstraintValidte.class )//这个表示具体实现验证的类名
public @interface Myconstract {
    /**
     *
     * 自定义验证注解必须保留着三个属性因为原有注解也有这三个属性
     */
    String message() default "{javax.validation.constraints.NotBlank.message}";

    Class<?>[] groups() default { };

    Class<? extends Payload>[] payload() default { };
}

···
以下为ConstraintValidte.class为具体验证的内容

//Object代表的是当前这个注解Myconstract只能放在field类型为Object的字段上
public class ConstraintValidte implements ConstraintValidator<Myconstract,Object> {

/**
 *  这个类里面可以通过AutoWird 注入spirng的 此类不用使用注解@Compoment因为spirng看到实现了ConstraintValidator接口,
 *
 *  l例如我们可以引入数据库的接口调用验证表单重复等信息
 *
 */
@Override
public boolean isValid(Object value, ConstraintValidatorContext context) {

    System.out.println(value+"这是第一个自定义调研filed");
    return true;
}

@Override
public void initialize(Myconstract constraintAnnotation) {

}

}

然后具体的类那里验证就可以了


dto.png

相关文章

网友评论

      本文标题:spring boot 基于验证自定义验证

      本文链接:https://www.haomeiwen.com/subject/oxfzyqtx.html