1

私が取り組んでいる 1 つのアプリケーションには、複数の URL とインスタンス固有のその他の情報があります。最初のパスでは、典型的な Spring PropertyPlaceholderConfigurerとプロパティ ファイルを使用します。

<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
    <property name="location" value="classpath:application.properties"/>
</bean>

これに関する主な問題は、もちろん、プロパティ ファイルはチェックインする必要があるアーティファクトであり、新しいインスタンスを開始するにはそのアーティファクトを更新する必要があることです。展開を合理化するために、データベース テーブルに基づいて ApplicationContext ブートストラップ自体を作成したいと考えています。このフォーラムの投稿のような解決策を見たことがありますが、ここでより良いツールを知っている人はいますか、それともこの問題に対するこの事実上のアプローチですか? また、JMX またはその他の機能を使用して実行時に設定を更新/リロードできるようにしたいと考えていますが、データベースの変更後にアプリを再起動する必要があることは、現在のソリューションよりも優れています。

4

1 に答える 1

0

私たちが行った方法は、いくつかの構成情報を環境に入れ、そこから関連情報を引き出すことでした。

<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
   <property name="searchSystemEnvironment" value="true" />
</bean>

構成が変更された場合、アプリを再起動する必要があります。すべての異なる構成を環境に入れ、次のように変数をネストすることもできます。

<bean id="db" class="org.DataSource"
        p:databaseServer="${${MODE}_DBSERVER}"
        p:databaseName="${${MODE}_DBNAME}" />

$MODE = dev、qa など

于 2011-03-16T21:04:41.427 に答える