パッケージ jakarta.servlet

インターフェース Servlet

すべての既知のサブインターフェース:
HttpJspPageJspPage
すべての既知の実装クラス:
FacesServletGenericServletHttpServlet

public interface Servlet
すべてのサーブレットが実装する必要があるメソッドを定義します。

サーブレットは、Web サーバー内で実行される小さな Java プログラムです。サーブレットは、通常は HTTP(HyperText Transfer Protocol)を介して、Web クライアントからのリクエストを受信して応答します。

このインターフェースを実装するには、jakarta.servlet.GenericServlet を継承する汎用サーブレットまたは jakarta.servlet.http.HttpServlet を継承する HTTP サーブレットを作成できます。

このインターフェースは、サーブレットを初期化し、リクエストを処理し、サーバーからサーブレットを削除するメソッドを定義します。これらはライフサイクルメソッドと呼ばれ、次の順序で呼び出されます。

  1. サーブレットが作成され、init メソッドで初期化されます。
  2. クライアントから service メソッドへの呼び出しはすべて処理されます。
  3. サーブレットはサービスを停止し、destroy メソッドで破棄され、ガベージコレクションとファイナライズが行われます。

ライフサイクルメソッドに加えて、このインターフェースは、サーブレットが起動情報を取得するために使用できる getServletConfig メソッドと、作者、バージョン、著作権などのサーブレット自身に関する基本的な情報を返すための getServletInfo メソッドを提供します。

作成者:
Various
関連事項:
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    void
    サーブレットコンテナーによって呼び出され、サーブレットがサービスを停止していることをサーブレットに示します。
    この Servlet の初期化および起動パラメーターを含む ServletConfig オブジェクトを返します。
    作成者、バージョン、著作権など、サーブレットに関する情報を返します。
    void
    サーブレットがサービスに配置されていることをサーブレットに示すために、サーブレットコンテナーによって呼び出されます。
    void
    サーブレットがリクエストに応答できるようにするために、サーブレットコンテナーによって呼び出されます。
  • メソッドの詳細

    • init

      void init(ServletConfig config) throws ServletException
      サーブレットがサービスに配置されていることをサーブレットに示すために、サーブレットコンテナーによって呼び出されます。

      サーブレットコンテナーは、サーブレットをインスタンス化した後、init メソッドを 1 回だけ呼び出します。サーブレットがリクエストを受け取る前に、init メソッドが正常に完了する必要があります。コンテナーは、init メソッドで実行されたアクションが、JSR-133 のルールに従って後で service メソッドを呼び出すすべてのスレッドに確実に表示されるようにします (つまり、init と service の間には「前に発生する」関連があります)。

      init メソッドの場合、サーブレットコンテナーはサーブレットをサービスに配置できません。

      1. ServletException をスローします
      2. Web サーバーによって定義された期間内に戻らない
      パラメーター:
      config - サーブレットの構成および初期化パラメーターを含む ServletConfig オブジェクト
      例外:
      ServletException - サーブレットの通常の動作を妨げる例外が発生した場合
      関連事項:
    • getServletConfig

      ServletConfig getServletConfig()
      この Servlet の初期化および起動パラメーターを含む ServletConfig オブジェクトを返します。返される ServletConfig オブジェクトは、init メソッドに渡されたオブジェクトです。

      このインターフェースの実装は、ServletConfig オブジェクトを格納して、このメソッドがオブジェクトを返すことができるようにします。このインターフェースを実装する GenericServlet クラスは、すでにこれを実行しています。

      戻り値:
      このサーブレットを初期化する ServletConfig オブジェクト
      関連事項:
    • service

      サーブレットがリクエストに応答できるようにするために、サーブレットコンテナーによって呼び出されます。

      このメソッドは、サーブレットの init() メソッドが正常に完了した後にのみ呼び出されます。

      レスポンスのステータスコードは、エラーをスローまたは送信するサーブレットに対して常に設定する必要があります。

      サーブレットは通常、複数のリクエストを同時に処理できるマルチスレッドサーブレットコンテナー内で実行されます。開発者は、ファイル、ネットワーク接続、サーブレットのクラス変数とインスタンス変数などの共有リソースへのアクセスを同期することに注意する必要があります。

      パラメーター:
      req - クライアントのリクエストを含む ServletRequest オブジェクト
      res - サーブレットのレスポンスを含む ServletResponse オブジェクト
      例外:
      ServletException - サーブレットの通常の操作を妨げる例外が発生した場合
      IOExceptionSE - 入力または出力の例外が発生した場合
    • getServletInfo

      StringSE getServletInfo()
      作成者、バージョン、著作権など、サーブレットに関する情報を返します。

      このメソッドが返す文字列はプレーンテキストであり、あらゆる種類のマークアップ(HTML、XML など)ではありません。

      戻り値:
      サーブレット情報を含む String 
    • destroy

      void destroy()
      サーブレットコンテナーによって呼び出され、サーブレットがサービスを停止していることをサーブレットに示します。このメソッドは、サーブレットの service メソッド内のすべてのスレッドが終了するか、タイムアウト期間が経過した後にのみ呼び出されます。サーブレットコンテナーがこのメソッドを呼び出した後、このサーブレットで service メソッドを再度呼び出すことはありません。

      このメソッドにより、サーブレットは保持されているリソース(メモリ、ファイルハンドル、スレッドなど)をクリーンアップし、永続状態がメモリ内のサーブレットの現在の状態と同期するようにします。