当前位置: 代码网 > it编程>编程语言>Java > Java中spring boot validation自定义注解使用方式

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

2024年08月05日 Java 我要评论
spring boot validation自定义注解创建一个注解@target({elementtype.field})//需要写注解的三三个要素@retention(runtime)@docume

spring boot validation自定义注解

创建一个注解

@target({elementtype.field})//需要写注解的三三个要素
@retention(runtime)
@documented
@constraint(validatedby = {issystemyesnovaildation.class})//绑定 在这里会报错 你需要去实现
public @interface issystemyesno {

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

public class issystemyesnovaildation implements 
                   //入参         类型
constraintvalidator<issystemyesno,string> {//实现 
    @override
    public boolean isvalid(string value, constraintvalidatorcontext context) {
//把video传进来  自定义注解就写好了
        return systemyesno.iscode(value);
    }
}

最后这里是使用注解方法

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.time包下的时间类被注解的元素值必须是一个未来的日期
@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被注解的字符串长度、集合或数组的大小必须在指定范围内

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com