spring 4 纯javaconfig配置的项目:注解@Pattern 里面的regexp如何引入properties的值 ?

我使用的是spring 4 javaconfig配置没有任何的xml。
下面的代码:

@PropertySource(value = "classpath:valid.properties")
public class Role implements Serializable {

    @Id
    private String id;
    /**
     * 角色名称
     */
    @Pattern(regexp = "^[a-zA-Z0-9_]{6,32}$")
    private String name;

我在这个通过 @PropertySource 引入了properties文件
虽然可以通过@Value 来获取到properties的值 , 但是 regexp无论如何都无法写入properties的值编译都不能通过,到底该如何写 ?

类似下面的写法都不对 :

@Pattern(regexp = @Value("${name}"))
@Pattern(regexp = "${name}")

但是@pattern还有一个属性 message 就可以这样写 : message = "${name}"

regexp 该如何获取到properties的值 ?

阅读 13.5k
3 个回答
新手上路,请多包涵

是一个校验字符串的功能,判断拥有pattern注解的属性是否匹配值,正则表达式懂吧,pattern注解的regexp属性可以认为正则表达式,用来判断拥有pattern注解的属性值,而message则是判断不通过后的提示信息

新手上路,请多包涵

@Value("${name}")
private String name1;

@Pattern(regexp=name1)
private String name

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题