子级(Web)上下文无法访问的属性
一个典型的用例:我有applicationContext.xml
and dispatcher-
servlet.xml。在父上下文(applicationContext.xml
)中,我有:
<context:property-placeholder location="classpath:application.properties" />
但是,Web上下文无法访问由它加载的属性-
既不能在xml中使用,也不能使用@Value
。(它们只是无法解析,${varName}
而是将表达式()设置为值)
我也通过添加<context:property-placeholder>
来解决此问题dispatcher-servlet.xml
,但我想知道是否:
- 这是预期的行为
- 没有更好的方法将属性公开给子上下文。
回答:
是的,这是预期的行为。<context:property-
placeholder>创建一个BeanFactoryPostProcessor
基于上下文应用的。因此,无论如何,您将需要在子上下文中使用后处理器。
以上是 子级(Web)上下文无法访问的属性 的全部内容, 来源链接: utcz.com/qa/400200.html