サーブレット ライフ サイクルの 4 つのステージは、ロード ステージ、初期化ステージ、リクエスト処理、破棄ステージです。サーブレット オブジェクトのライフ サイクルを制御するメソッドは、init()、service()、およびです。 destroy ()
サーブレットのライフサイクル全体は、サーブレット コンテナによって管理されます。サーブレット コンテナは、javax.servlet.Servlet インターフェイスを使用してサーブレット オブジェクトを理解および管理します。サーブレットのライフ サイクルは 4 つの段階に分けることができます。ロードフェーズ、初期化フェーズ、リクエスト処理、破棄フェーズです。次の記事では、サーブレットオブジェクトのライフサイクルの各ステージを詳しく紹介します。
[推奨コース: Java コース]
サーブレットのライフサイクル
1. サーブレットのロード
サーブレット ライフ サイクルの最初の段階は、サーブレット コンテナを介してロードして初期化することです。
サーブレット コンテナすべてをロードします 実行されるアクション:
(1) サーブレット クラスのロード
(2) サーブレットの作成とインスタンス化
注: サーブレットが前の段階にない場合は、サービスを要求するにはサーブレットが必要であると Web コンテナが判断することを知っておく必要があるため、遅延ロード プロセスを使用する必要があります。
2. 初期化フェーズ
サーブレットが正常にインスタンス化されると、サーブレット コンテナはサーブレット オブジェクトの初期化を開始し、すぐに Servlet.init() メソッドを呼び出して初期化します。リソース
Servlet.init(ServletConfig)
このプロセス中にサーブレットを初期化できない場合は、ServletException または UnavailableException を通じてサーブレット コンテナに初期化できないことが通知されます
##3 リクエストの処理#。 ##初期化後、サーブレット インスタンスはクライアントのリクエストに対応できるようになります。サーブレット インスタンスがサービス リクエスト内にある場合、サーブレット コンテナは次の操作を実行します。
(1) ServletRequest オブジェクトと ServletResponse オブジェクトを作成します。HTTP リクエストが送信されると、Web コンテナは HttpServletRequest と HttpServletResponse を作成します。オブジェクト
(2) リクエスト オブジェクトとレスポンス オブジェクトを作成した後、Servlet.service() メソッドを呼び出します。
Servlet.service(ServletRequest,ServletResponse)
service() メソッドは、リクエストの処理時に ServletException または UnavailableException
4 をスローする場合があります。 サーブレットを破棄するサーブレット コンテナがServlet では、次の操作を実行します。
(1) サーブレット インスタンスで現在実行中のすべてのスレッドが、ジョブの完了後に解放されるようにします。
(2) 現在実行中のスレッドがジョブを完了すると、サーブレット コンテナは destroy() メソッドを呼び出してインスタンス化されたサーブレット オブジェクト全体へのすべての参照を解放します
サーブレット ライフ サイクル メソッドサーブレット ライフ サイクルの制御に使用されるメソッド。次の 3 つのライフ サイクル メソッドがあります。
init() メソッドサーブレット オブジェクトが正常に初期化されたかどうかにかかわらず、このメソッドは ServletConfig オブジェクト
public void init(ServletConfig con)throws ServletException{ }
という 1 つのパラメーターのみを受け取ります。 クライアントが要求した情報をサーブレット オブジェクトに通知するために使用され、最も重要な実行メソッドであり、クライアントとサーバー間の接続を提供します。 Web サーバーはクライアントの要求を処理し、service() メソッドを呼び出して応答をクライアントに送り返します。
public void service(ServletRequest req, ServletResponse resp) throws ServletException, IOException { }
このメソッドは 2 つのパラメータを受け入れます:
ServletRequest: クライアントによって要求されたデータを収集することを示します。
ServletResponse: 生成された出力コンテンツを示します。
destroy() メソッドこのメソッドは、サーブレットのライフ サイクルで 1 回だけ実行され、サーブレットのライフ サイクルの最後に呼び出されます。このメソッドがアクティブ化されると、サーブレット オブジェクトのインスタンス化の終了を示します。
は、すべてのサーブレット インスタンスが解放されることを意味します。
public void destroy()
要約: これで終わりです。記事 記事の全内容はここにあります。サーブレット サイクルを学ぶ皆さんのお役に立てば幸いです。
以上がサーブレットのライフサイクルの段階は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。