- ベストアンサー
サーブレットのinit-param記述方法
サーブレットのweb.xmlへのinit-paramの記述についてですが、 複数のサーブレットがある場合に まとめてinit-paramを記述する方法がわかりません。 サーブレット毎に<servlet> ~ </servlet>の中へ DBへの接続(url,user,passwd)用のinit-paramを記述していますが、 毎回書くとweb.xmlが長く見難いものになってしまいます。 あるパス配下(../servlet/ など)でまとめて記述することはできますか? 現状でも動くことは問題ないのですが・・・
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#16216
回答No.1
いくつかのServletのみに初期値を設定するようなパラメータは 少なくとも現在はないはずです。 (Servlet2.4になればあるのかもしれませんが。。。) 代わりに、<context-param>を使えば、Webアプリケーション全体に 対して初期値を設定できます。 他には、DBへの接続に限った話だと、DataSourceをサポートした 環境(Tomcatなどの一部のServletコンテナやAPサーバ)を使っても いいかもしれません。 または、プロパティファイルを別に用意して読み込むようにしても 対応はできると思います。 Servlet2.3をサポートしたコンテナの場合には、Filterを作って、 そのFilterの初期値として渡して、それを利用することで特定のURLのみ 共通の値を持たせることも可能でしょう。
お礼
お礼おそくなりましたことお許しください。 ありがとうございました。 <context-param>を利用し、無事に動くこと確認しました。 参考URLをブックマークさせて頂きます。 ServletContextのgetInitParameter()を利用する方法で 少し苦しみましたが・・・ とりあえず、DB接続用のみで使用する予定ですので Webアプリケーション全体で良いとしました。 ありがとうございます。