跳过Spring占位符替换

时间:2018-02-16 13:04:45

标签: java spring

我在我的应用程序中使用Spring属性占位符。我的一个属性值包含Spring解释为占位符的内容,但我不想要它:

@Value("${propertyName}")
private String property;

我的财产定义明确:

propertyName=Welcome ${name}

毫不奇怪,我收到了一个错误:

  

无法解析值“欢迎$ {name}”

中的占位符'name'

propertyName是我想解释的东西,所以我不希望Spring解析$ {name}。这可能吗?

2 个答案:

答案 0 :(得分:3)

在这种情况下你需要逃避美元($)。因此,春天不会将此视为财产。

propertyName=Welcome #{'$'}{name}

答案 1 :(得分:0)

您可以创建自己的Input: asome test file-2_rev2.docx RegEx: (?<=^a).+?(?=_.+?$) Result: some test file-2 bean并将(^.*?(?=a)a)|[^_]+$ 设置为PropertySourcesPlaceholderConfigurer,这应该可行。但请记住,这会影响该环境中的所有占位符。