Class MobileValidator

java.lang.Object
tech.riemann.nif.web.jsr380.validator.MobileValidator
All Implemented Interfaces:
jakarta.validation.ConstraintValidator<Mobile,String>

public class MobileValidator extends Object implements jakarta.validation.ConstraintValidator<Mobile,String>
手机号码验证器

M39: 实现 required + regexp 语义——原组合 @Pattern 注解下 required 无消费者, required=false 时空串仍校验失败、required=true 时 null 仍通过(Bean Validation 对 null 跳过), 两个语义均落空;现按注解属性显式实现

验证逻辑:

  • null/空串:required=true 时失败,required=false 时通过
  • 非空:按 Mobile.regexp() 正则匹配
Author:
Kerbores(kerbores@riemann.tech)
  • Constructor Details

    • MobileValidator

      public MobileValidator()
  • Method Details

    • initialize

      public void initialize(Mobile anno)
      初始化验证器
      Specified by:
      initialize in interface jakarta.validation.ConstraintValidator<Mobile,String>
      Parameters:
      anno - Mobile 注解实例
    • isValid

      public boolean isValid(String value, jakarta.validation.ConstraintValidatorContext context)
      验证手机号码
      Specified by:
      isValid in interface jakarta.validation.ConstraintValidator<Mobile,String>
      Parameters:
      value - 待验证的号码
      context - 验证上下文
      Returns:
      是否有效