• ベストアンサー

サーブレットのinit-param記述方法

サーブレットのweb.xmlへのinit-paramの記述についてですが、 複数のサーブレットがある場合に まとめてinit-paramを記述する方法がわかりません。 サーブレット毎に<servlet> ~ </servlet>の中へ DBへの接続(url,user,passwd)用のinit-paramを記述していますが、 毎回書くとweb.xmlが長く見難いものになってしまいます。 あるパス配下(../servlet/ など)でまとめて記述することはできますか? 現状でも動くことは問題ないのですが・・・

質問者が選んだベストアンサー

  • ベストアンサー
noname#16216
noname#16216
回答No.1

いくつかのServletのみに初期値を設定するようなパラメータは 少なくとも現在はないはずです。 (Servlet2.4になればあるのかもしれませんが。。。) 代わりに、<context-param>を使えば、Webアプリケーション全体に 対して初期値を設定できます。 他には、DBへの接続に限った話だと、DataSourceをサポートした 環境(Tomcatなどの一部のServletコンテナやAPサーバ)を使っても いいかもしれません。 または、プロパティファイルを別に用意して読み込むようにしても 対応はできると思います。 Servlet2.3をサポートしたコンテナの場合には、Filterを作って、 そのFilterの初期値として渡して、それを利用することで特定のURLのみ 共通の値を持たせることも可能でしょう。

参考URL:
http://www.sk-jp.com/java/servlet/webxml.html
ssm3u
質問者

お礼

お礼おそくなりましたことお許しください。 ありがとうございました。 <context-param>を利用し、無事に動くこと確認しました。 参考URLをブックマークさせて頂きます。 ServletContextのgetInitParameter()を利用する方法で 少し苦しみましたが・・・ とりあえず、DB接続用のみで使用する予定ですので Webアプリケーション全体で良いとしました。 ありがとうございます。

関連するQ&A