场景:
名称:性别
字段:SEX
类型:INTEGER
值:1,0 (男:1,女:0)
问题:
1、没有已封装好的校验注解提供使用
2、INTEGER类型不支持正则表达式
3、if、else太过繁琐且可读性太差
解决:
通过编写自定义注解,使sex字段只限0或1输入,否则提示对应信息
实现步骤
1、创建一个自定义注解OneOrZero,class类型为Annotation
2、pom中添加校验需要使用到的依赖
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
3、在OneOrZero注解中添加SpringBoot JSR303规则下校验器必须使用到的注解和方法
@Documented
//校验注解使用哪个校验器进行校验
@Constraint(validatedBy = {
})
//可用于哪些位置:方法、属性、参数、构造器等
@Target({
METHOD, FIELD, ANNOTATION_TYPE