弹簧配置与系统属性

时间:2010-11-04 14:25:50

标签: spring properties

我有一个问题。目前我使用-P属性启动jboss,该属性链接到具有属性的文件。 在这个属性文件中我有属性 - mongo.server.list = 127.0.0.1。在Spring配置中,我尝试将此属性设置为bean的构造函数的值。但是spring将$ {mongo.server.list}视为值本身。

这是代码

<bean id="systemPropertyConfigurer"
   class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
</bean>

<bean id="mongo" class="com.mongodb.Mongo">
    <constructor-arg index="0">
        <value>${mongo.server.list}</value>
    </constructor-arg>
</bean>

3 个答案:

答案 0 :(得分:2)

您应该将属性文件设置为JVM属性,并在spring mvc配置文件中将其读取为:

<context:property-placeholder location="file:///${-P}" />

答案 1 :(得分:1)

您应该将该属性指定为JVM arg -Dmongo.server.list = ....

答案 2 :(得分:1)

您是否尝试使用-Dmongo.server.list=127.0.0.1启动服务器? (即使用-D代替-P-D与属性名称之间没有空格