JSP暗黙的オブジェクト
JSP 暗黙的オブジェクトは、各ページの JSP コンテナによって提供される Java オブジェクトであり、開発者は明示的に宣言することなく直接使用できます。 JSP 暗黙的オブジェクトは、事前定義変数とも呼ばれます。
JSP でサポートされる 9 つの暗黙的オブジェクト:
Object | Description |
---|---|
リクエスト | HttpServletRequestクラス |
のインスタンス レスポンス | HttpServletResponseクラスのインスタンス |
out | PrintWriter クラスのインスタンス。結果を Web ページに出力するために使用されます |
セッション | HttpSessionクラスのインスタンス |
アプリケーションコンテキスト | に関連する、application |
クラスのインスタンス config | ServletConfigクラス |
のインスタンス pageContext | PageContext クラスのインスタンス。JSP ページ |
のすべてのオブジェクトと名前空間へのアクセスを提供します。 ページ | Java クラスのこのキーワードに似ています |
Exception | Exception クラスのオブジェクトは、エラーが発生した JSP ページ内の対応する例外オブジェクトを表します |
request オブジェクト
request オブジェクトは、javax.servlet.http.HttpServletRequest クラスのインスタンスです。クライアントが JSP ページをリクエストするたびに、JSP エンジンはリクエストを表す新しいリクエスト オブジェクトを作成します。
リクエスト オブジェクトは、HTTP ヘッダー情報、Cookie、HTTP メソッドなどを取得するための一連のメソッドを提供します。
応答オブジェクト
応答オブジェクトは、javax.servlet.http.HttpServletResponse クラスのインスタンスです。サーバーはリクエスト オブジェクトを作成するときに、クライアントに応答するためのレスポンス オブジェクトも作成します。
応答オブジェクトは、HTTP ヘッダー モジュールを処理するためのインターフェイスも定義します。このオブジェクトを通じて、開発者は新しい Cookie、タイムスタンプ、HTTP ステータス コードなどを追加できます。
out オブジェクト
out オブジェクトは javax.servlet.jsp.JspWriter クラスのインスタンスであり、応答オブジェクトにコンテンツを書き込むために使用されます。
元の JspWriter クラス オブジェクトは、ページがキャッシュされているかどうかに応じて、異なるインスタンス化操作を実行します。キャッシュは、ページ ディレクティブのbuffered='false' 属性を使用して簡単にオフにすることができます。
JspWriter クラスには、java.io.PrintWriter クラスのほとんどのメソッドが含まれています。ただし、JspWriter には、キャッシュを処理するために特別に設計された新しいメソッドがいくつか追加されています。また、JspWriter クラスは IOExceptions をスローしますが、PrintWriter はスローしません。
次の表は、boolean、char、int、double、String、object、およびその他のタイプのデータを出力するために使用する重要なメソッドをリストしています。 .print(dataType dt)
out.println(dataType dt) | Type 型の値を出力してラップします |
---|---|
out.flush() | 出力ストリームを更新します |
session オブジェクトsession オブジェクトは、javax.servlet.http.HttpSession クラスのインスタンスです。 Java サーブレットのセッション オブジェクトと同じ動作をします。 セッション オブジェクトは、クライアント リクエスト間のセッションを追跡するために使用されます。 アプリケーション オブジェクトアプリケーション オブジェクトは、サーブレットの ServletContext クラスのオブジェクトを直接ラップしており、javax.servlet.ServletContext クラスのインスタンスです。 このオブジェクトは、JSP ページのライフサイクル全体を通じて、この JSP ページを表します。このオブジェクトは、JSP ページが初期化されるときに作成され、jspDestroy() メソッドが呼び出されるときに削除されます。 アプリケーションにプロパティを追加すると、Web アプリケーションを構成するすべての JSP ファイルがこれらのプロパティにアクセスできるようになります。 config オブジェクトconfig オブジェクトは、サーブレットの ServletConfig クラスのオブジェクトを直接ラップする javax.servlet.ServletConfig クラスのインスタンスです。 このオブジェクトを使用すると、開発者はファイル パスなどのサーブレットまたは JSP エンジンの初期化パラメータにアクセスできます。 以下は config オブジェクトの使用方法です。これはあまり重要ではないため、一般的には使用されません。 config.getServletName(); <servlet-name> 要素に含まれるサーブレット名を返します。 -name> 要素は WEB-INFweb .xml ファイルにあります。 pageContext オブジェクトpageContext オブジェクトは、javax.servlet.jsp.PageContext クラスのインスタンスであり、JSP ページ全体を表すために使用されます。 このオブジェクトは主に、ほとんどの実装の詳細を除外しながらページ情報にアクセスするために使用されます。 このオブジェクトは、リクエスト オブジェクトとレスポンス オブジェクトへの参照を保存します。アプリケーション オブジェクト、構成オブジェクト、セッション オブジェクト、および出力オブジェクトは、このオブジェクトのプロパティにアクセスすることでエクスポートできます。 pageContext オブジェクトには、キャッシュ情報、ErrorPage URL、ページ スコープなど、JSP ページに渡される命令情報も含まれます。 PageContext クラスは、PAGE_SCOPE、REQUEST_SCOPE、SESSION_SCOPE、APPLICATION_SCOPE などのいくつかのフィールドを定義します。また、40 を超えるメソッドも提供されており、その半分は javax.servlet.jsp.JspContext クラスから継承しています。 重要なメソッドの 1 つは、removeArribute() で、1 つまたは 2 つのパラメーターを受け取ります。たとえば、pageContext.removeArribute("attrName") は 4 つのスコープ内の関連属性を削除しますが、次のメソッドは特定のスコープ内の関連属性のみを削除します。 ページ オブジェクト このオブジェクトはページ インスタンスへの参照です。これは、JSP ページ全体の代表とみなすことができます。 ページ オブジェクトは、このオブジェクトの同義語です。 例外オブジェクト 例外オブジェクトは、前のページからスローされた例外情報をラップします。エラー状態に対する適切な応答を生成するためによく使用されます。 |