<init-param>要素
少し戻りますが<sevlet>要素には子要素として<init-param>要素を定義することができます。<init-param>要素はサーブレットに初期値を設定したい場合に利用します。
プログラム内に直接記述することももちろん出来るのですけど、プログラム内に記述した場合、初期値を変更したい場合にはプログラムを再コンパイルする必要があります。それに対して<init-param>要素に初期値を設定しプログラム内から参照する場合には、初期値を変更した場合でもプログラム自体は再コンパイルする必要がありません。
もう一度<sevlet>要素内に含まれる子要素の定義を確認してみます。
<servlet> | +- <description> (0回以上無制限) | +- <servlet-name> (1回) | +- <servlet-class> (jsp-fileのどちらかを1回) | +- <jsp-file> (servlet-classのどちらかを1回) | +- <init-param> (0回以上無制限) | +- <load-on-startup> (0回か1回) | +- <run-as> (0回か1回) | +- <security-role-ref> (0回以上無制限) | </servlet>
<init-param>要素は0回以上無制限ですので、記述しなくても構いませんし何回記述しても構いません。
また<init-param>要素は、さらに子要素を内部に持っています。先にどのような構成になるかを確認しておきます。
<init-param>要素の構成
<init-param>要素は下記のように定義されています。