自定义校验注解

1.编写一个自己的注解(校验实体类某个字段提交的值是否在{0,1}中)
自定义注解
ListValueConstraintValidator.class是自己定义的校验器,包含具体的校验逻辑,其中values是定义的校验标准

2.为注解编写一个校验器
在这里插入图片描述
需要实现ConstraintValidator<ListValue,Integer>接口并实现该接口中的方法,ListValue指的是自己定义的注解,Integer指的是被校验的数据类型。在校验其中的initialize()方法可以获取到自定义注解中传入的校验标准,isValid()则是具体校验逻辑(使用Set将校验标准{0,1}装入,再使用contains()方法判断提交的值是否在Set中)。在这之后:

@Constraint(
        validatedBy = { ListValueConstraintValidator.class }//关联自定义注解和自定义校验器
)

3.使用自定义注解校验
在这里插入图片描述
使用时注意的是需要在使用实体类的前面加上@Validated注解(如下图),该注解中的groups是与字段上的校验注解中的groups对应的分组校验(可以忽略)
在这里插入图片描述
谨此记录一下,以后用到直接搬。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值