Class Validator

java.lang.Object
com.luna.common.regex.Validator

public class Validator extends Object
字段验证器(验证器),分两种类型的验证:
  • isXXX:通过返回boolean值判断是否满足给定格式。
  • validateXXX:通过抛出异常ValidateException检查是否满足给定格式。
主要验证字段非空、是否为满足指定格式等(如是否为Email、电话等)
Author:
Looly
  • Field Details

    • GENERAL

      public static final Pattern GENERAL
      英文字母 、数字和下划线
    • NUMBERS

      public static final Pattern NUMBERS
      数字
    • GROUP_VAR

      public static final Pattern GROUP_VAR
      分组
    • IPV4

      public static final Pattern IPV4
      IP v4
    • IPV6

      public static final Pattern IPV6
      IP v6
    • MONEY

      public static final Pattern MONEY
      货币
    • EMAIL

      public static final Pattern EMAIL
      邮件
    • MOBILE

      public static final Pattern MOBILE
      移动电话
    • CITIZEN_ID

      public static final Pattern CITIZEN_ID
      身份证号码
    • ZIP_CODE

      public static final Pattern ZIP_CODE
      邮编
    • BIRTHDAY

      public static final Pattern BIRTHDAY
      生日
    • URL

      public static final Pattern URL
      URL
    • URL_HTTP

      public static final Pattern URL_HTTP
      Http URL
    • GENERAL_WITH_CHINESE

      public static final Pattern GENERAL_WITH_CHINESE
      中文字、英文字母、数字和下划线
    • UUID

      public static final Pattern UUID
      UUID
    • UUID_SIMPLE

      public static final Pattern UUID_SIMPLE
      不带横线的UUID
    • PLATE_NUMBER

      public static final Pattern PLATE_NUMBER
      中国车牌号码
    • CAR_VIN

      public static final Pattern CAR_VIN
      车架号;别名:车辆识别代号 车辆识别码;十七位码
    • CAR_DRIVING_LICENCE

      public static final Pattern CAR_DRIVING_LICENCE
      驾驶证 别名:驾驶证档案编号、行驶证编号;12位数字字符串;仅限:中国驾驶证档案编号
  • Constructor Details

    • Validator

      public Validator()
  • Method Details

    • isTrue

      public static boolean isTrue(boolean value)
      给定值是否为true
      Parameters:
      value - 值
      Returns:
      是否为true
      Since:
      4.4.5
    • isFalse

      public static boolean isFalse(boolean value)
      给定值是否不为false
      Parameters:
      value - 值
      Returns:
      是否不为false
      Since:
      4.4.5
    • validateTrue

      public static boolean validateTrue(boolean value, String errorMsgTemplate, Object... params) throws ValidateException
      检查指定值是否为true
      Parameters:
      value - 值
      errorMsgTemplate - 错误消息内容模板(变量使用{}表示)
      params - 模板中变量替换后的值
      Returns:
      检查过后的值
      Throws:
      ValidateException - 检查不满足条件抛出的异常
      Since:
      4.4.5
    • validateFalse

      public static boolean validateFalse(boolean value, String errorMsgTemplate, Object... params) throws ValidateException
      检查指定值是否为false
      Parameters:
      value - 值
      errorMsgTemplate - 错误消息内容模板(变量使用{}表示)
      params - 模板中变量替换后的值
      Returns:
      检查过后的值
      Throws:
      ValidateException - 检查不满足条件抛出的异常
      Since:
      4.4.5
    • isNull

      public static boolean isNull(Object value)
      给定值是否为null
      Parameters:
      value - 值
      Returns:
      是否为null
    • isNotNull

      public static boolean isNotNull(Object value)
      给定值是否不为null
      Parameters:
      value - 值
      Returns:
      是否不为null
    • validateNull

      public static <T> T validateNull(T value, String errorMsgTemplate, Object... params) throws ValidateException
      检查指定值是否为null
      Type Parameters:
      T - 被检查的对象类型
      Parameters:
      value - 值
      errorMsgTemplate - 错误消息内容模板(变量使用{}表示)
      params - 模板中变量替换后的值
      Returns:
      检查过后的值
      Throws:
      ValidateException - 检查不满足条件抛出的异常
      Since:
      4.4.5
    • validateNotNull

      public static <T> T validateNotNull(T value, String errorMsgTemplate, Object... params) throws ValidateException
      检查指定值是否非null
      Type Parameters:
      T - 被检查的对象类型
      Parameters:
      value - 值
      errorMsgTemplate - 错误消息内容模板(变量使用{}表示)
      params - 模板中变量替换后的值
      Returns:
      检查过后的值
      Throws:
      ValidateException - 检查不满足条件抛出的异常
    • isEmpty

      public static boolean isEmpty(Object value)
      验证是否为空
      对于String类型判定是否为empty(null 或 "")
      Parameters:
      value - 值
      Returns:
      是否为空
    • isNotEmpty

      public static boolean isNotEmpty(Object value)
      验证是否为非空
      对于String类型判定是否为empty(null 或 "")
      Parameters:
      value - 值
      Returns:
      是否为空
    • validateEmpty

      public static <T> T validateEmpty(T value, String errorMsg) throws ValidateException
      验证是否为空,非空时抛出异常
      对于String类型判定是否为empty(null 或 "")
      Type Parameters:
      T - 值类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值,验证通过返回此值,空值
      Throws:
      ValidateException - 验证异常
    • validateNotEmpty

      public static <T> T validateNotEmpty(T value, String errorMsg) throws ValidateException
      验证是否为非空,为空时抛出异常
      对于String类型判定是否为empty(null 或 "")
      Type Parameters:
      T - 值类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值,验证通过返回此值,非空值
      Throws:
      ValidateException - 验证异常
    • equal

      public static boolean equal(Object t1, Object t2)
      验证是否相等
      当两值都为null返回true
      Parameters:
      t1 - 对象1
      t2 - 对象2
      Returns:
      当两值都为null或相等返回true
    • validateEqual

      public static Object validateEqual(Object t1, Object t2, String errorMsg) throws ValidateException
      验证是否相等,不相等抛出异常
      Parameters:
      t1 - 对象1
      t2 - 对象2
      errorMsg - 错误信息
      Returns:
      相同值
      Throws:
      ValidateException - 验证异常
    • validateNotEqual

      public static void validateNotEqual(Object t1, Object t2, String errorMsg) throws ValidateException
      验证是否不等,相等抛出异常
      Parameters:
      t1 - 对象1
      t2 - 对象2
      errorMsg - 错误信息
      Throws:
      ValidateException - 验证异常
    • validateNotEmptyAndEqual

      public static void validateNotEmptyAndEqual(Object t1, Object t2, String errorMsg) throws ValidateException
      验证是否非空且与指定值相等
      当数据为空时抛出验证异常
      当两值不等时抛出异常
      Parameters:
      t1 - 对象1
      t2 - 对象2
      errorMsg - 错误信息
      Throws:
      ValidateException - 验证异常
    • validateNotEmptyAndNotEqual

      public static void validateNotEmptyAndNotEqual(Object t1, Object t2, String errorMsg) throws ValidateException
      验证是否非空且与指定值相等
      当数据为空时抛出验证异常
      当两值相等时抛出异常
      Parameters:
      t1 - 对象1
      t2 - 对象2
      errorMsg - 错误信息
      Throws:
      ValidateException - 验证异常
    • validateMatchRegex

      public static <T extends CharSequence> T validateMatchRegex(String regex, T value, String errorMsg) throws ValidateException
      通过正则表达式验证
      不符合正则抛出ValidateException 异常
      Type Parameters:
      T - 字符串类型
      Parameters:
      regex - 正则
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isMatchRegex

      public static boolean isMatchRegex(Pattern pattern, CharSequence value)
      通过正则表达式验证
      Parameters:
      pattern - 正则模式
      value - 值
      Returns:
      是否匹配正则
    • isMatchRegex

      public static boolean isMatchRegex(String regex, CharSequence value)
      通过正则表达式验证
      Parameters:
      regex - 正则
      value - 值
      Returns:
      是否匹配正则
    • isGeneral

      public static boolean isGeneral(CharSequence value)
      验证是否为英文字母 、数字和下划线
      Parameters:
      value - 值
      Returns:
      是否为英文字母 、数字和下划线
    • validateGeneral

      public static <T extends CharSequence> T validateGeneral(T value, String errorMsg) throws ValidateException
      验证是否为英文字母 、数字和下划线
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isGeneral

      public static boolean isGeneral(CharSequence value, int min, int max)
      验证是否为给定长度范围的英文字母 、数字和下划线
      Parameters:
      value - 值
      min - 最小长度,负数自动识别为0
      max - 最大长度,0或负数表示不限制最大长度
      Returns:
      是否为给定长度范围的英文字母 、数字和下划线
    • validateGeneral

      public static <T extends CharSequence> T validateGeneral(T value, int min, int max, String errorMsg) throws ValidateException
      验证是否为给定长度范围的英文字母 、数字和下划线
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      min - 最小长度,负数自动识别为0
      max - 最大长度,0或负数表示不限制最大长度
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isGeneral

      public static boolean isGeneral(CharSequence value, int min)
      验证是否为给定最小长度的英文字母 、数字和下划线
      Parameters:
      value - 值
      min - 最小长度,负数自动识别为0
      Returns:
      是否为给定最小长度的英文字母 、数字和下划线
    • validateGeneral

      public static <T extends CharSequence> T validateGeneral(T value, int min, String errorMsg) throws ValidateException
      验证是否为给定最小长度的英文字母 、数字和下划线
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      min - 最小长度,负数自动识别为0
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isLetter

      public static boolean isLetter(CharSequence value)
      判断字符串是否全部为字母组成,包括大写和小写字母和汉字
      Parameters:
      value - 值
      Returns:
      是否全部为字母组成,包括大写和小写字母和汉字
      Since:
      3.3.0
    • validateLetter

      public static <T extends CharSequence> T validateLetter(T value, String errorMsg) throws ValidateException
      验证是否全部为字母组成,包括大写和小写字母和汉字
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      3.3.0
    • isUpperCase

      public static boolean isUpperCase(CharSequence value)
      判断字符串是否全部为大写字母
      Parameters:
      value - 值
      Returns:
      是否全部为大写字母
      Since:
      3.3.0
    • validateUpperCase

      public static <T extends CharSequence> T validateUpperCase(T value, String errorMsg) throws ValidateException
      验证字符串是否全部为大写字母
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      3.3.0
    • isLowerCase

      public static boolean isLowerCase(CharSequence value)
      判断字符串是否全部为小写字母
      Parameters:
      value - 值
      Returns:
      是否全部为小写字母
      Since:
      3.3.0
    • validateLowerCase

      public static <T extends CharSequence> T validateLowerCase(T value, String errorMsg) throws ValidateException
      验证字符串是否全部为小写字母
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      3.3.0
    • isNumber

      public static boolean isNumber(CharSequence value)
      验证该字符串是否是数字
      Parameters:
      value - 字符串内容
      Returns:
      是否是数字
    • hasNumber

      public static boolean hasNumber(CharSequence value)
      是否包含数字
      Parameters:
      value - 当前字符串
      Returns:
      boolean 是否存在数字
      Since:
      5.6.5
    • validateNumber

      public static String validateNumber(String value, String errorMsg) throws ValidateException
      验证是否为数字
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isWord

      public static boolean isWord(CharSequence value)
      验证该字符串是否是字母(包括大写和小写字母)
      Parameters:
      value - 字符串内容
      Returns:
      是否是字母(包括大写和小写字母)
      Since:
      4.1.8
    • validateWord

      public static <T extends CharSequence> T validateWord(T value, String errorMsg) throws ValidateException
      验证是否为字母(包括大写和小写字母)
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      4.1.8
    • isMoney

      public static boolean isMoney(CharSequence value)
      验证是否为货币
      Parameters:
      value - 值
      Returns:
      是否为货币
    • validateMoney

      public static <T extends CharSequence> T validateMoney(T value, String errorMsg) throws ValidateException
      验证是否为货币
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isZipCode

      public static boolean isZipCode(CharSequence value)
      验证是否为邮政编码(中国)
      Parameters:
      value - 值
      Returns:
      是否为邮政编码(中国)
    • validateZipCode

      public static <T extends CharSequence> T validateZipCode(T value, String errorMsg) throws ValidateException
      验证是否为邮政编码(中国)
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isEmail

      public static boolean isEmail(CharSequence value)
      验证是否为可用邮箱地址
      Parameters:
      value - 值
      Returns:
      true为可用邮箱地址
    • validateEmail

      public static <T extends CharSequence> T validateEmail(T value, String errorMsg) throws ValidateException
      验证是否为可用邮箱地址
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isMobile

      public static boolean isMobile(CharSequence value)
      验证是否为手机号码(中国)
      Parameters:
      value - 值
      Returns:
      是否为手机号码(中国)
    • validateMobile

      public static <T extends CharSequence> T validateMobile(T value, String errorMsg) throws ValidateException
      验证是否为手机号码(中国)
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isCitizenId

      public static boolean isCitizenId(CharSequence value)
      验证是否为身份证号码(支持18位、15位和港澳台的10位)
      Parameters:
      value - 身份证号,支持18位、15位和港澳台的10位
      Returns:
      是否为有效身份证号码
    • validateCitizenIdNumber

      public static <T extends CharSequence> T validateCitizenIdNumber(T value, String errorMsg) throws ValidateException
      验证是否为身份证号码(支持18位、15位和港澳台的10位)
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isBirthday

      public static boolean isBirthday(int year, int month, int day)
      验证是否为生日
      Parameters:
      year - 年,从1900年开始计算
      month - 月,从1开始计数
      day - 日,从1开始计数
      Returns:
      是否为生日
    • isBirthday

      public static boolean isBirthday(CharSequence value)
      验证是否为生日
      只支持以下几种格式:
      • yyyyMMdd
      • yyyy-MM-dd
      • yyyy/MM/dd
      • yyyy.MM.dd
      • yyyy年MM月dd日
      Parameters:
      value - 值
      Returns:
      是否为生日
    • validateBirthday

      public static <T extends CharSequence> T validateBirthday(T value, String errorMsg) throws ValidateException
      验证验证是否为生日
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isIpv4

      public static boolean isIpv4(CharSequence value)
      验证是否为IPV4地址
      Parameters:
      value - 值
      Returns:
      是否为IPV4地址
    • validateIpv4

      public static <T extends CharSequence> T validateIpv4(T value, String errorMsg) throws ValidateException
      验证是否为IPV4地址
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isIpv6

      public static boolean isIpv6(CharSequence value)
      验证是否为IPV6地址
      Parameters:
      value - 值
      Returns:
      是否为IPV6地址
    • validateIpv6

      public static <T extends CharSequence> T validateIpv6(T value, String errorMsg) throws ValidateException
      验证是否为IPV6地址
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isMac

      public static boolean isMac(CharSequence value)
      验证是否为MAC地址
      Parameters:
      value - 值
      Returns:
      是否为MAC地址
      Since:
      4.1.3
    • validateMac

      public static <T extends CharSequence> T validateMac(T value, String errorMsg) throws ValidateException
      验证是否为MAC地址
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      4.1.3
    • isPlateNumber

      public static boolean isPlateNumber(CharSequence value)
      验证是否为中国车牌号
      Parameters:
      value - 值
      Returns:
      是否为中国车牌号
      Since:
      3.0.6
    • validatePlateNumber

      public static <T extends CharSequence> T validatePlateNumber(T value, String errorMsg) throws ValidateException
      验证是否为中国车牌号
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      3.0.6
    • isUrl

      public static boolean isUrl(CharSequence value)
      验证是否为URL
      Parameters:
      value - 值
      Returns:
      是否为URL
    • validateUrl

      public static <T extends CharSequence> T validateUrl(T value, String errorMsg) throws ValidateException
      验证是否为URL
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isChinese

      public static boolean isChinese(CharSequence value)
      验证是否都为汉字
      Parameters:
      value - 值
      Returns:
      是否为汉字
    • hasChinese

      public static boolean hasChinese(CharSequence value)
      验证是否包含汉字
      Parameters:
      value - 值
      Returns:
      是否包含汉字
      Since:
      5.2.1
    • validateChinese

      public static <T extends CharSequence> T validateChinese(T value, String errorMsg) throws ValidateException
      验证是否为汉字
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 表单值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isGeneralWithChinese

      public static boolean isGeneralWithChinese(CharSequence value)
      验证是否为中文字、英文字母、数字和下划线
      Parameters:
      value - 值
      Returns:
      是否为中文字、英文字母、数字和下划线
    • validateGeneralWithChinese

      public static <T extends CharSequence> T validateGeneralWithChinese(T value, String errorMsg) throws ValidateException
      验证是否为中文字、英文字母、数字和下划线
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isUUID

      public static boolean isUUID(CharSequence value)
      验证是否为UUID
      包括带横线标准格式和不带横线的简单模式
      Parameters:
      value - 值
      Returns:
      是否为UUID
    • validateUUID

      public static <T extends CharSequence> T validateUUID(T value, String errorMsg) throws ValidateException
      验证是否为UUID
      包括带横线标准格式和不带横线的简单模式
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
    • isHex

      public static boolean isHex(CharSequence value)
      验证是否为Hex(16进制)字符串
      Parameters:
      value - 值
      Returns:
      是否为Hex(16进制)字符串
      Since:
      4.3.3
    • validateHex

      public static <T extends CharSequence> T validateHex(T value, String errorMsg) throws ValidateException
      验证是否为Hex(16进制)字符串
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      4.3.3
    • isBetween

      public static boolean isBetween(Number value, Number min, Number max)
      检查给定的数字是否在指定范围内
      Parameters:
      value - 值
      min - 最小值(包含)
      max - 最大值(包含)
      Returns:
      是否满足
      Since:
      4.1.10
    • validateBetween

      public static void validateBetween(Number value, Number min, Number max, String errorMsg) throws ValidateException
      检查给定的数字是否在指定范围内
      Parameters:
      value - 值
      min - 最小值(包含)
      max - 最大值(包含)
      errorMsg - 验证错误的信息
      Throws:
      ValidateException - 验证异常
      Since:
      4.1.10
    • isCreditCode

      public static boolean isCreditCode(CharSequence creditCode)
      是否是有效的统一社会信用代码
       第一部分:登记管理部门代码1位 (数字或大写英文字母)
       第二部分:机构类别代码1位 (数字或大写英文字母)
       第三部分:登记管理机关行政区划码6位 (数字)
       第四部分:主体标识码(组织机构代码)9位 (数字或大写英文字母)
       第五部分:校验码1位 (数字或大写英文字母)
       
      Parameters:
      creditCode - 统一社会信用代码
      Returns:
      校验结果
      Since:
      5.2.4
    • isCarVin

      public static boolean isCarVin(CharSequence value)
      验证是否为车架号;别名:行驶证编号 车辆识别代号 车辆识别码
      Parameters:
      value - 值,17位车架号;形如:LSJA24U62JG269225、LDC613P23A1305189
      Returns:
      是否为车架号
      Since:
      5.6.3
    • validateCarVin

      public static <T extends CharSequence> T validateCarVin(T value, String errorMsg) throws ValidateException
      验证是否为车架号;别名:行驶证编号 车辆识别代号 车辆识别码
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      5.6.3
    • isCarDrivingLicence

      public static boolean isCarDrivingLicence(CharSequence value)
      验证是否为驾驶证 别名:驾驶证档案编号、行驶证编号 仅限:中国驾驶证档案编号
      Parameters:
      value - 值,12位数字字符串,eg:430101758218
      Returns:
      是否为档案编号
      Since:
      5.6.3
    • validateCarDrivingLicence

      public static <T extends CharSequence> T validateCarDrivingLicence(T value, String errorMsg) throws ValidateException
      验证是否为驾驶证 别名:驾驶证档案编号、行驶证编号
      Type Parameters:
      T - 字符串类型
      Parameters:
      value - 值
      errorMsg - 验证错误的信息
      Returns:
      验证后的值
      Throws:
      ValidateException - 验证异常
      Since:
      5.6.3