5

私はSpring 2.5.6を使用しています。PropertyPlaceholderConfigurerを介してプロパティ ファイルからプロパティが割り当てられている Bean があります。プロパティファイルが変更されたときにBeanのプロパティを更新できるかどうか疑問に思っています。たとえば、プロパティ ファイルの最終変更日をチェックし、変更されている場合は Bean をリロードする定期的なプロセスがあります。

私の要件を満たすものがすでにあるかどうか疑問に思っています。そうでない場合、この問題を解決する最善の方法は何ですか?

ご協力いただきありがとうございます。

4

5 に答える 5

3

SpringのPropertyOverrideConfigurerの使用も検討する可能性があります。プロパティを再読み取りして、ポーリング/スケジュールされたBeanに再適用できます。

実際に構成されたBeanがこれらのプロパティをどのように使用するかによって異なります。たとえば、間接的に自分自身のどこかにキャッシュする場合があります。

于 2009-02-27T15:24:36.407 に答える
2

実行時に動的プロパティが必要な場合は、おそらく別の方法で JMX を使用します。

于 2009-02-27T15:14:41.517 に答える
0

プロパティ ファイルの変更時に Bean を再作成する Bean のカスタム スコープを使用しようとする場合があります。ここで私のより広範な回答を参照してください。

于 2012-04-23T14:24:30.770 に答える
0

春のクラウド構成Spring Cloud Bus と Cloud Config Server を使用して、実行時に構成プロパティを変更する機能があります。構成または .properties または .yml ファイルは、Spring アプリから「外部化」され、代わりにアプリが起動時に接続する Spring Cloud Config サーバーから取得されます。Cloud Config サーバーは、GIT リポジトリから適切な構成の .properties または .yml ファイルを取得します (他のストレージ ソリューションもありますが、GIT が最も一般的です)。その後、GIT リポジトリの構成ファイルの内容を変更することで、実行時に構成を変更できます。クラウド構成サーバーは、Spring Cloud Bus を介して任意のクライアント Spring アプリケーションに変更をブロードキャストし、それらのアプリケーションの構成は、再起動する必要なく更新されます。アプリ。ここで実際の簡単な例を見つけることができます:https://github.com/ldojo/spring-cloud-config-examples

于 2016-03-08T02:57:18.980 に答える
0

これを行う 1 つの方法は、Groovy コンソールをアプリケーションに埋め込むことです。ここにいくつかの指示があります。ところで、それらは非常に簡単に実行できました。私は Groovy にあまり詳しくありませんが、ほとんど時間はかかりませんでした。

これを行うと、コンソールに移動して、ライブ アプリケーション内の値をその場で変更することができます。

于 2009-02-27T15:09:24.960 に答える