当前位置: 首页 > 面试题库 >

我的applicationContext中可以有多个PropertyPlaceHolderConfigurer吗?

麹浩瀚
2023-03-14
问题内容

我需要根据给定的系统属性加载特定的applicationContext.xml文件。这本身会加载具有实际配置的文件。因此,我需要2个PropertyPlaceHolderConfigurer,一个可解决系统参数,另一个在实际配置中。

任何想法如何做到这一点?


问题答案:

是的,您可以做多个。确保设置ignoreUnresolvablePlaceholders,以便第一个将忽略它无法解析的所有占位符。

<bean id="ppConfig1" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
   <property name="ignoreUnresolvablePlaceholders" value="true"/>
   <property name="locations">
    <list>
             <value>classpath*:/my.properties</value>
    </list>
  </property>
</bean>

<bean id="ppConfig2" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
   <property name="ignoreUnresolvablePlaceholders" value="false"/>
   <property name="locations">
    <list>
             <value>classpath*:/myOther.properties</value>
    </list>
  </property>
</bean>

根据您的应用程序,您应该研究systemPropertiesMode,它允许您从文件中加载属性,但允许系统属性覆盖属性文件中的值(如果已设置)。



 类似资料:
  • 问题内容: 我将GOPATH设置为 我有 并且 我不喜欢在我的root dev文件夹中如何强制使用这个通用的“ go”目录来保存许多不同客户的go项目。 问题答案: 是的,是目录列表(如)。运行以获取详细信息。例如,在Linux上,我有: 我在Windows上有类似的东西。 注意:Linux 用作列表分隔符。Windows 用作分隔符。 如果使用,它将默认为列表中的第一个目录。 运行以检查一切正确

  • 我想为DropWizard创建几个yaml文件。其中一个包含敏感信息,另一个包含非敏感信息。 你能给我指出任何文档或例子如何在DropWizard中拥有多个配置吗?

  • 问题内容: 春天的定义很模糊,我几乎完成了一整本教程,但仍然不明白它代表什么。 根据Spring API,是: 中央接口,为应用程序提供配置。在应用程序运行时,它是只读的,但是如果实现支持,则可以重新加载。 用于访问Spring bean容器的根接口。这是bean容器的基本客户端视图。 从上面,我的问题是: 1)我不断看到书中提到的“容器”,容器指的是什么?一个容器意味着一个Java进程吗?或一个

  • 问题内容: 我有两个项目,其中一个(服务)包括第二个(核心)。我已经在以下Core项目中定义了此PropertyPlaceholderConfigurer: 我想在上层项目中扩展Core占位符,包括appConfig.properties和其他一些。我发现的唯一方法是在上层定义另一个不同的bean(不同的ID),并包括新的bean: 但是它产生的结果是找不到appConfig.properties

  • 问题内容: 我有2个需要绑定在一起的文件:hibernate.cfg.xml和hibernate属性。如何使用PropertyPlaceholderConfigurer将它们彼此指向?是否可以不将它们声明为bean?(我是Spring的初学者)。每个答案表示赞赏。 提前致谢。 纳扎尔 hibernate.cfg.xml: hibernate.properties: 问题答案: 是的,您可以访问两个

  • 问题内容: 我正在将pytest用于我的selenium测试,并想知道在一个测试中是否可能有多个断言? 我调用了一个比较多个值的函数,并且我希望测试报告所有不匹配的值。我遇到的问题是,使用“ assert”或“ pytest.fail”会在发现不匹配的值时立即停止测试。 有没有办法让测试继续运行并报告所有不匹配的值? 问题答案: 正如Jon Clements所评论的那样,您可以填充错误消息列表,然