JSP ディレクティブ
JSPディレクティブは、JSPページ全体に関連する属性(Webページのエンコーディング方式やスクリプト言語など)を設定するために使用されます。
構文は次のとおりです:
<%@ directive attribute="value" %>
ディレクティブには多くの属性を指定できます。これらはキーと値のペアの形式で存在し、カンマで区切られます。
JSPの3種類のディレクティブタグ:
| ディレクティブ | 説明 |
|---|---|
| <%@ page ... %> | ページの依存属性を定義します。例:スクリプト言語、エラーページ、キャッシュ要件など |
| <%@ include ... %> | 他のファイルをインクルードする |
| <%@ taglib ... %> | タグライブラリの定義をインポートする |
Pageディレクティブ
Pageディレクティブは、コンテナに現在のページの使用説明を提供します。1つのJSPページには複数のpageディレクティブを含めることができます。
Pageディレクティブの構文形式:
<%@ page attribute="value" %>
同等のXML形式:
<jsp:directive.page attribute="value" />
属性
以下の表に、Pageディレクティブに関連する属性を示します:
| 属性 | 説明 |
|---|---|
| buffer | outオブジェクトが使用するバッファサイズを指定します |
| autoFlush | outオブジェクトのバッファを制御します |
| contentType | 現在のJSPページのMIMEタイプと文字エンコーディングを指定します |
| errorPage | JSPページで例外が発生したときに遷移するエラーハンドリングページを指定します |
| isErrorPage | 現在のページを別のJSPページのエラーハンドリングページとして使用できるかどうかを指定します |
| extends | サーブレットがどのクラスを継承するかを指定します |
| import | 使用するJavaクラスをインポートします |
| info | JSPページの説明情報を定義します |
| isThreadSafe | JSPページへのアクセスがスレッドセーフであるかどうかを指定します |
| language | JSPページで使用するスクリプト言語を定義します。デフォルトはJavaです |
| session | JSPページがsessionを使用するかどうかを指定します |
| isELIgnored | EL式を実行するかどうかを指定します |
| isScriptingEnabled | スクリプト要素を使用できるかどうかを決定します |
Includeディレクティブ
JSPはincludeディレクティブを使用して他のファイルをインクルードできます。インクルードされるファイルは、JSPファイル、HTMLファイル、またはテキストファイルです。インクルードされたファイルは、そのJSPファイルの一部であるかのように、一緒にコンパイルおよび実行されます。
Includeディレクティブの構文形式は次のとおりです:
<%@ include file="文件相对 url 地址" %>
includeディレクティブ内のファイル名は、実際には相対URLアドレスです。
ファイルにパスを関連付けていない場合、JSPコンパイラはデフォルトで現在のパスで検索します。
同等のXML構文:
<jsp:directive.include file="文件相对 url 地址" />
Taglibディレクティブ
JSP APIはユーザーがカスタムタグを定義することを許可します。カスタムタグライブラリとは、カスタムタグの集合です。
Taglibディレクティブは、カスタムタグの集合の定義をインポートします。これにはライブラリのパスやカスタムタグが含まれます。
Taglibディレクティブの構文:
<%@ taglib uri="uri" prefix="prefixOfTag" %>
uri属性はタグライブラリの場所を決定し、prefix属性はタグライブラリのプレフィックスを指定します。
同等のXML構文:
<jsp:directive.taglib uri="uri" prefix="prefixOfTag" />その他の拡張