Package xin.ctkqiang.控制器
Class 身份证处理控制器
- java.lang.Object
-
- xin.ctkqiang.控制器.身份证处理控制器
-
public class 身份证处理控制器 extends Object
身份证处理控制器类,主要负责协调身份证图像的处理、OCR 识别、识别结果的解析以及身份证号码的验证等工作。 它将模型层的图像处理和 OCR 识别功能与视图层的结果展示功能相结合,同时依据国家标准 GB11643 - 1999 对中国身份证号码进行合法性验证。 对于身份证号码的验证,该类支持 15 位和 18 位身份证号码,具体验证步骤如下: 1. 长度检查:确保身份证号码的长度为 15 位或者 18 位。 2. 首位检查:由于中国身份证号码的首位不能为 0,所以会对首位进行检查。 3. 格式检查:利用正则表达式来检查身份证号码的基本格式是否符合规则。 4. 日期检查:验证身份证号码中的出生日期是否合法,同时会考虑闰年的情况。 5. 校验位检查(仅针对 18 位身份证):通过加权因子计算校验位,并与身份证号码的最后一位进行比较。
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
处理并显示结果(@NotNull String 图像路径)
处理身份证图像并显示识别结果。boolean
已验证(@NotNull String 身份证号码)
验证身份证号码的合法性。
-
-
-
Constructor Detail
-
身份证处理控制器
public 身份证处理控制器(@NotNull @NotNull 身份证处理模型 模型, @NotNull @NotNull 身份证识别结果视图 视图)
控制器类的构造函数,用于初始化模型和视图对象。 此构造函数的作用是将模型层和视图层的对象注入到控制器中,使得控制器可以协调它们之间的工作, 从而完成身份证图像的处理、识别、解析和验证等一系列操作。- Parameters:
\u6a21\u578b
- 负责身份证图像的处理和 OCR 识别的模型对象,不能为 null。\u89c6\u56fe
- 负责展示 OCR 识别结果的视图对象,不能为 null。- Throws:
IllegalArgumentException
- 如果传入的模型或视图对象为 null,则抛出该异常。
-
-
Method Detail
-
处理并显示结果
public void 处理并显示结果(@NotNull @NotNull String 图像路径)
处理身份证图像并显示识别结果。 该方法接收身份证图像的路径作为参数,首先调用模型对象的处理图像方法对图像进行处理, 然后对处理后的图像进行 OCR 识别,接着解析识别结果,最后将解析后的结果和验证结果传递给视图对象进行展示。- Parameters:
\u56fe\u50cf\u8def\u5f84
- 身份证图像的文件路径,不能为 null。- Throws:
IllegalArgumentException
- 如果传入的图像路径为 null,则抛出该异常。
-
已验证
public boolean 已验证(@NotNull @NotNull String 身份证号码)
验证身份证号码的合法性。 该方法支持对 15 位和 18 位身份证号码进行验证。首先会进行基本的空值、长度和首位检查, 然后根据身份证号码的长度调用相应的验证方法进行进一步验证。- Parameters:
\u8eab\u4efd\u8bc1\u53f7\u7801
- 待验证的身份证号码,不能为 null。- Returns:
- 验证结果:true 表示合法,false 表示非法。
- Throws:
IllegalArgumentException
- 如果传入的身份证号码为 null,则抛出该异常。
-
-