开发者

Java中spring boot validation自定义注解使用方式

目录
  • spring boot validation自定义注解
  • spring boot Validation校验注解参考表
  • 总结

spring boot validation自定义注解

创建一个注解

Java中spring boot validation自定义注解使用方式

@Target({Elemen编程客栈tType.FIELD})//需要写注解的三三个要素
@Retention(RUNTIME)
@Documented
@Constraint(validatedBy = {IsSystemYesNoVaildation.class})//绑定 在这里会报错 你需要去实现
public @interface IsSystemYesNo {

    String message()编程客栈 default "数据字典:【系统是否】-参数不合法";
//要添加下面这两个 
 Class<?>[] groups() default { };
 Class<? extends Payload>[] payload() default {};
}

Java中spring boot validation自定义注解使用方式

public class IsSystemYesNoVaildation implements 
                编程客栈   //入参         类型
ConstraintValidator<IsSystemYesNo,String> {//实现 
    @Override
    public boolean isValid(String value, ConstraintValidatorContext context) {
//把video传进来  自定义注解就写好了
        return SystemYesNo.isCode(value);
    }
}

最后这里是使用注解方法

Java中spring boot validation自定义注解使用方式

spring boot Validation校验注解参考表

校验注解表
校验注解注解的元素类型描述
@AssertFalseBoolean、boolean编程客栈被注解的元素值必须为 false
@AssertTrueBoolean、boolean被注解的元素值必须为 true
@DecimalMaxBigDecimal、BigInteger、CharSequence、byte、short、int、long以及它们各自的包装类被注解的元素值小于等于@DecimalMax注解中的value 值
@DecimalMin

被注解的元素值大于等于@DecimalMin注解

中的value 值

@MaxBigDecimal、BigInteger、byte、short、int、long以及它们各自的包装类被注解的元素值小于等于@Max注解中的value 值
@Min

被注解的元素值大于等于@Min注解

中的value 值

@DigitsBigDecimal、BigInteger、CharSequence、byte、short、int、long以及它们各自的包装类被注解的元素必须是一个数字,其值必须在可接受的范围内(整数位数和小数位数在指定范围内
@EmailCharSequence被注解的元素必须是Email格式
@FutureJava.util.Date、java.util.Calendar以及java.tphpime包下的时间类被注解的元素值必须是一个未来的日期
@Past被注解的元素值必须是一个过去的日期
@PastOrPresent被注解的元素值必须是一个过去的日期或者当前日期
@FutureOrPresent被注解的元素值必须是一个未来的日期或者当前日期
@NegativeBigDecimal、BigInteger、byte、short、int、long以及它们各自的包装类被注解的元素必须是负数
@NegativeOrZero被注解的元素必须是负数或0
@Positive被注解的元素必须是正数
@PositiveOrZero被注解的元素必须是或0
@NotBlankCharSequence被注解的元素必须部位null并且至少有一个非空白的字符
@NotEmptyCharSequence、Collection、Map、Array被注解的字符串不为null或空字符串,被注解的集合或数组不为空。和@NotBlank注解相比,一个空格字符串在@NotBlank验证不通过,但在NotEmpty中通过验证
@NotNull任意类型被注解的元素不为null
@Null被注解的元素为null
@PatternCharSequence被注解的 元素必须符合指定的正则表达式
@SizeCharSequence、Collection、Map、Array被注解的字符串长度、集合或数组的大小必须在指定范围内

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜