- - PR -
設定ファイルの再読み込み方法
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2003-10-18 09:27
こんにちは。
サーブレットのinitメソッドで設定ファイルを読み込むように しています。 設定ファイルを変更した場合、Tomcatを再起動しないで 再読み込みするようにしたいと思っています。 これを実現するのにはどのような方法があるのでしょうか。 自分では次の方法しか浮かびませんでした。 1.そのサーブレットに設定ファイルが変更したことを知らせる リクエストを送り、service(doGet, doPost)メソッドの中で、 自分自身のinitあるいはdestroyメソッドを呼び出す。 ※destroyメソッドを呼べば、サーブレットインスタンスが なくなり、次にリクエストが来たときにインスタンスが生成される? ※タイミングによっては問題がある? 2.サーブレットから新たにスレッドを作り、 そのスレッドが定期的に設定ファイルのタイムスタンプを 調べるようにする。 変更されていれば、設定ファイルを再読み込みする。 もっと簡単な方法、上の方法の問題点などありましたら、 教えてください。 よろしくお願いします。 | ||||
|
投稿日時: 2003-10-18 09:49
J2SE 1.4以降なら、java.util.prefs.Preferencesが使えるかもしれません。
設定が変更された時に通知を受けることが出来ます。 | ||||
|
投稿日時: 2003-10-18 13:30
こんにちわ。
うのきちさん、返信ありがとうございます。
設定ファイルの情報をサーブレットの初期化処理で Preferencesに登録し、 設定ファイルを変更したら、 外部プログラムで 変更内容をPreferencesに反映するという 方法でしょうか。 アプリケーションのために独自に作成したプロパティ形式の 設定ファイルなどの場合はPreferences自身を設定情報の 格納場所にしたり、変更通知機能を利用したりでき、 このAPI使えると思いました。 サーブレットで使用している既存のコンポーネント(log4j等)の 設定ファイルの変更を反映させる場合は、 Preferencesの変更通知機能のみ使うという感じになるのでしょうか。 はじめてこのAPIを知ったのですが、 おもしろいと思いました。 ありがとうございました。 | ||||
1
