对由属性占位符创建的属性的编程访问

我正在使用读取属性文件context:property-placeholder。如何以编程方式访问它们(@Value不起作用-开发时我不知道产权)?

主要问题是我无法更改applicationContext.xml文件,因为它是由“父”框架设置的

ps。很奇怪,但是Environment.getProperty回来了null

回答:

PropertyPlaceholderConfigurer是一个BeanFactoryPostProcessor,在bean创建过程中仅是“活动的”。遇到${property}符号时,它将尝试根据其内部属性来解决该问题,但不会使这些属性对容器可用。

就是说:类似的问题一遍又一遍地出现,建议的解决方案通常是子类化PropertyPlaceHolderConfigurer,并使Properties手动提供给上下文。或使用PropertiesFactoryBean

以上是 对由属性占位符创建的属性的编程访问 的全部内容, 来源链接: utcz.com/qa/401586.html

回到顶部