Java 使用注解校验身份证号
来源:互联网 发布:淘宝上氟硝西泮叫什么 编辑:程序博客网 时间:2024/06/06 00:46
身份证号校验注解类
package com.command.util;import static java.lang.annotation.ElementType.CONSTRUCTOR;import static java.lang.annotation.ElementType.FIELD;import static java.lang.annotation.ElementType.METHOD;import static java.lang.annotation.ElementType.PARAMETER;import static java.lang.annotation.RetentionPolicy.RUNTIME;import java.lang.annotation.Documented;import java.lang.annotation.Retention;import java.lang.annotation.Target;import javax.validation.Constraint;import javax.validation.Payload;import javax.validation.ReportAsSingleViolation;import javax.validation.constraints.Null;import javax.validation.constraints.Pattern;import org.hibernate.validator.constraints.CompositionType;import org.hibernate.validator.constraints.ConstraintComposition;import org.hibernate.validator.constraints.Length;/** * 身份证号验证,为空和正确的身份证号都验证通过,<br/> * 身份证长度18位,由17位数字加一位数字或Xx组成 * */@ConstraintComposition(CompositionType.OR)@Pattern(regexp = "[1-9]\\d{5}(19|20)\\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\\d|3[0-1])\\d{3}[0-9Xx]")@Null@Length(min = 0, max = 0)@Documented@Constraint(validatedBy = {})@Target({ METHOD, FIELD, CONSTRUCTOR, PARAMETER })@Retention(RUNTIME)@ReportAsSingleViolationpublic @interface Cid { String message() default "身份证号校验错误"; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {};}
使用样例
package com.exchange.command.personal;import com.command.util.Cid;import lombok.Getter;import lombok.Setter;import org.hibernate.validator.constraints.Length;import org.hibernate.validator.constraints.NotEmpty;@Getter@Setterpublic class PersonalReq{ @NotEmpty(message = "姓名不能为空") @Length(max = 30, min = 2,message = "姓名长度限制2~30字符") private String name; //添加身份证号校验注解 @NotEmpty(message = "身份证号不能为空") @Cid private String certNo;}
阅读全文
0 0
- Java 使用注解校验身份证号
- Java校验输入的身份证号
- 身份证号正则校验(js校验+JAVA校验)
- 身份证号校验
- 身份证号校验
- 身份证号校验
- 身份证号校验
- Java:身份证号的校验与生成
- Java使用反射和注解实现参数校验
- java正则表达式 校验邮箱 身份证号 手机号等
- JS 身份证号校验 年龄校验
- 身份证号校验的 js
- Javascript身份证号校验
- Javascript身份证号校验
- 身份证号如何校验
- JS严格校验身份证号
- SQLSERVER校验身份证号 合法性
- PHP校验身份证号
- Unity 多线程
- td相对定位不显示边框,使用background-clip解决
- Java反编译工具Jad详解
- Java InputStream、String、File相互转化
- pickup 类的使用
- Java 使用注解校验身份证号
- jmeter数据库链接池压力测试
- 移植libnoPoll到SylixOS遇到的问题总结
- JavaWeb--浅谈Httpsession和cookie
- Python学习基本数据类型(三)
- PHP菜鸟-最近在自学PHP,发现一个问题!
- SSD(single shot multibox detector)算法及Caffe代码详解
- 线程锁/进程锁/文件锁
- ExitProcess与TerminateProcess