我有一个springboot应用程序,其中application.properties看起来像这样-
keyA=valueA
keyB=valueB
keyC=${keyA}
因此,我知道使用@Value
注解,我可以正确地将keyC
的值作为“valueA”。但是,我的程序当前使用的是一个只读文件,其中getProperty()
方法将keyC
的值返回为“${keyA}”,而不是“valueA”。
示例代码
- 只读 *
第一次
输出
${keyA}
**我将无法修改只读文件。**我想知道是否有合适的替代方法可以在www.example.com中添加类似${keyA}
的变量application.properties以便getPropertyValue
方法可以识别它。如有任何帮助,我们将不胜感激,谢谢。
1条答案
按热度按时间w9apscun1#
您必须自己对属性进行后处理,将键名与模式“^${(.*)}$”匹配的所有值替换为模式组1的相应键值。(注意. properties中可能存在错误的值交叉引用...这可能导致无限循环...)