【问题标题】:@Pattern From validation.api want to configure all the pattern in one property file@Pattern 来自 validation.api 想要在一个属性文件中配置所有模式
【发布时间】:2016-03-31 14:28:41
【问题描述】:

谁能帮我配置validation-api.1.1.jar中的@Pattern注解

@Pattern(regex = "PATTERN") 这个配置很简单,但我的要求是有一个中心文件,由所有模式组成,键和值作为模式.即属性文件。

感谢您的帮助。

【问题讨论】:

    标签: java regex spring validation


    【解决方案1】:

    不幸的是,拥有一个包含用于@Pattern 注释的模式正则表达式的属性文件本身并不可行,因为Java 要求注释使用编译时常量 .无法从属性文件中检索这些编译时正则表达式,因为无法在编译时解析属性文件;属性文件在运行时解析。

    话虽如此,您可以将所有编译时常量正则表达式模式保存在一个中心类或接口中。例如,考虑以下代码:

    public class FooClass {
      @Pattern(regex = Patterns.FOO_PATTERN)
      public void foo() {}
    }
    
    public class BarClass {
      @Pattern(regex = Patterns.BAR_PATTERN)
      public void bar() {}
    }
    
    public class Patterns {
      public static final String BAR_PATTERN = "bar?";
      public static final String FOO_PATTERN = "foo*";
    }
    

    如您所见,您可以拥有一个通用类,用于保存所有正则表达式模式字符串。我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2015-12-17
      • 1970-01-01
      • 2016-09-11
      • 2017-08-25
      • 2021-08-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多