0

私の残りのクライアントは、システム プロパティservice.modeを prod または uat または dev として設定します。このプロパティに基づいて、ファイルの対応するプロパティをdev.properties,prod.properties,uat.propertiesロードする必要があります。このプロパティは、Spring の applicationContext.xml で定義されたさまざまなサービス Bean によって使用されます。

システム プロパティに基づいて適切なプロパティを読み込む最善の方法は何service.modeですか?

4

2 に答える 2

0

最良の方法は、Spring 構成ファイルで PropertyPlaceholderConfigurer を使用することです。このような

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location">
            <value>file:${service.mode}</value>
        </property>
</bean>

そして、Bean でこのようなプロパティにアクセスできます

<bean id="initSystemStatus" class="xxxx.xxxx.xxxx.InitSystemStatus">
        <constructor-arg index="0" value="${application.context.instanceID:0001}" />
        <constructor-arg index="1" value="${application.context.timeout:2000}"/>
</bean>

注意

では${application.context.instanceID:0001}、プロパティファイルに0001プロパティが指定されていない場合のデフォルト値です。application.context.instanceID

于 2013-10-08T10:21:10.707 に答える