->(load-on-start-upが存在しない)タグまず最初に、サーブレットがサーバーにデプロイされるとき、サーブレットオブジェクトを作成するのはサーバーの責任です。例:サーブレットがサーバーにデプロイされているとします(サーブレットオブジェクトはサーバーでは使用できません)。クライアントが初めてサーブレットにリクエストを送信し、サーバーがデフォルトコンストラクターを使用してサーブレットオブジェクトを作成し、すぐにinit()を呼び出します。それから、クライアントがリクエストを送信すると、オブジェクトがすでに利用可能であるため、サービスメソッドのみが実行されます
load-on-start-upタグがデプロイメント記述子で使用されている場合:デプロイメント自体の時点で、サーバーはタグの間に指定された正の値に基づいてサーブレットのサーブレットオブジェクトを作成します。サーブレットクラスのオブジェクトの作成は0〜128の範囲で行われます。最初にサーブレットが作成され、その後に他の番号が作成されます。
web.xmlの2つのサーブレットに同じ値を指定すると、web.xmlのクラスの位置に基づいてオブジェクトの作成が行われ、サーバーによっても異なります。
起動タグのロードの間に負の値を指定すると、サーバーはサーブレットオブジェクトを作成しません。
サーバーがサーブレットのオブジェクトを作成するその他のシナリオ。
web.xmlの起動タグでロードを使用しない場合、サーバーがオブジェクトを作成し、サーバーがそのライフサイクルメソッドの呼び出しを担当するときに、クライアントがリクエストを初めて送信するときにプロジェクトがデプロイされます。次に、サーバー(tomcat)で.classが変更された場合。再びクライアントは変更されたサーブレットのリクエストを送信しますが、tomcatの場合、新しいオブジェクトは作成されず、サーバーの再起動が行われない限り、サーバーは既存のオブジェクトを利用します。しかし、web-logicのクラスでは、リクエストを受信した場合にサーバーを再起動せずにサーバーで.classファイルが変更されると、サーバーは既存のサーブレットでdestroyメソッドを呼び出し、新しいサーブレットオブジェクトを作成して初期化のためにinit()を呼び出します。