public interface Servlet
サーブレットは、Web サーバー内で実行される小さな Java プログラムです。サーブレットは、通常は HTTP(HyperText Transfer Protocol)を介して、Web クライアントからのリクエストを受信して応答します。
このインターフェースを実装するには、jakarta.servlet.GenericServlet
を継承する汎用サーブレットまたは jakarta.servlet.http.HttpServlet
を継承する HTTP サーブレットを作成できます。
このインターフェースは、サーブレットを初期化し、リクエストを処理し、サーバーからサーブレットを削除するメソッドを定義します。これらはライフサイクルメソッドと呼ばれ、次の順序で呼び出されます。
init
メソッドで初期化されます。service
メソッドへの呼び出しはすべて処理されます。destroy
メソッドで破棄され、ガベージコレクションとファイナライズが行われます。 ライフサイクルメソッドに加えて、このインターフェースは、サーブレットが起動情報を取得するために使用できる getServletConfig
メソッドと、作者、バージョン、著作権などのサーブレット自身に関する基本的な情報を返すための getServletInfo
メソッドを提供します。
GenericServlet
, HttpServlet
修飾子と型 | メソッドと説明 |
---|---|
void | destroy() サーブレットコンテナーによって呼び出され、サーブレットがサービスを停止していることをサーブレットに示します。 |
ServletConfig | getServletConfig() この Servlet の初期化および起動パラメーターを含む ServletConfig オブジェクトを返します。 |
StringSE | getServletInfo() 作成者、バージョン、著作権など、サーブレットに関する情報を返します。 |
void | init(ServletConfig config) サーブレットがサービスに配置されていることをサーブレットに示すために、サーブレットコンテナーによって呼び出されます。 |
void | service(ServletRequest req, ServletResponse res) サーブレットがリクエストに応答できるようにするために、サーブレットコンテナーによって呼び出されます。 |
void init(ServletConfig config) throws ServletException
サーブレットコンテナーは、サーブレットをインスタンス化した後、init
メソッドを 1 回だけ呼び出します。init
メソッドは、サーブレットがリクエストを受信する前に正常に完了する必要があります。
init
メソッドの場合、サーブレットコンテナーはサーブレットをサービスに配置できません。
ServletException
をスローします config
- サーブレットの構成および初期化パラメーターを含む ServletConfig
オブジェクト ServletException
- サーブレットの通常の動作を妨げる例外が発生した場合 UnavailableException
, getServletConfig()
ServletConfig getServletConfig()
ServletConfig
オブジェクトを返します。返される ServletConfig
オブジェクトは、init
メソッドに渡されたオブジェクトです。 このインターフェースの実装は、ServletConfig
オブジェクトを格納して、このメソッドがオブジェクトを返すことができるようにします。このインターフェースを実装する GenericServlet
クラスは、すでにこれを実行しています。
ServletConfig
オブジェクト init(jakarta.servlet.ServletConfig)
void service(ServletRequest req, ServletResponse res) throws ServletException, IOExceptionSE
このメソッドは、サーブレットの init()
メソッドが正常に完了した後にのみ呼び出されます。
レスポンスのステータスコードは、エラーをスローまたは送信するサーブレットに対して常に設定する必要があります。
サーブレットは通常、複数のリクエストを同時に処理できるマルチスレッドサーブレットコンテナー内で実行されます。開発者は、ファイル、ネットワーク接続、サーブレットのクラス変数とインスタンス変数などの共有リソースへのアクセスを同期することに注意する必要があります。
req
- クライアントのリクエストを含む ServletRequest
オブジェクト res
- サーブレットのレスポンスを含む ServletResponse
オブジェクト ServletException
- サーブレットの通常の操作を妨げる例外が発生した場合 IOExceptionSE
- 入力または出力の例外が発生した場合 StringSE getServletInfo()
このメソッドが返す文字列はプレーンテキストであり、あらゆる種類のマークアップ(HTML、XML など)ではありません。
String
void destroy()
service
メソッド内のすべてのスレッドが終了するか、タイムアウト期間が経過した後にのみ呼び出されます。サーブレットコンテナーがこのメソッドを呼び出した後、このサーブレットで service
メソッドを再度呼び出すことはありません。このメソッドにより、サーブレットは保持されているリソース(メモリ、ファイルハンドル、スレッドなど)をクリーンアップし、永続状態がメモリ内のサーブレットの現在の状態と同期するようにします。
Copyright © 2018,2020 Eclipse Foundation.
Use is subject to license terms.