JSPページディレクティブで使える主な属性の一覧とそれぞれの役割
JSPのページディレクティブ(<%@ page %>)は、コンテナに対してページ全体に関する設定情報を伝えるための仕組みです。バッファリングの制御、文字エンコーディングの指定、エラーページの設定など、ページの動作に影響するさまざまな属性を指定できます。
以下の表に、ページディレクティブで利用可能な主な属性とその目的をまとめました。
| No. | 属性名と目的 |
|---|---|
| 1 | buffer 出力ストリームに適用するバッファリングモデルを指定します。例: buffer="16kb"。 |
| 2 | autoFlush サーブレット出力バッファの動作を制御します。バッファが満杯になったときに自動的にフラッシュするかどうかを設定します。 |
| 3 | contentType レスポンスのMIMEタイプおよび文字エンコーディング方式を定義します。例: contentType="text/html; charset=UTF-8"。 |
| 4 | errorPage Javaの非チェック(unchecked)ランタイム例外が発生した際に、その例外を報告する別のJSPページのURLを定義します。 |
| 5 | isErrorPage このJSPページ自体が、他のJSPページのerrorPage属性で指定されたURLであるかどうかを示します。 |
| 6 | extends 生成されるサーブレットが継承すべきスーパークラスを指定します。 |
| 7 | import JSP内で使用するパッケージやクラスのリストを指定します。Javaにおけるimport文と同じ役割を果たします。 |
| 8 | info サーブレットのgetServletInfo()メソッドからアクセスできる説明用の文字列を定義します。 |
| 9 | isThreadSafe 生成されるサーブレットのスレッドモデルを定義します。複数のリクエストを同時に処理できるかどうかを示します。 |
| 10 | language JSPページで使用するスクリプト言語を定義します。通常は「java」を指定します。 |
| 11 | session JSPページがHTTPセッションに参加するかどうかを指定します。デフォルト値はtrueです。 |
| 12 | isELIgnored JSPページ内のEL式(Expression Language)を無視するかどうかを指定します。 |
| 13 | isScriptingEnabled スクリプトレットや宣言などのスクリプト要素の使用を許可するかどうかを決定します。 |
補足:ページディレクティブの記述例
複数の属性は1つのディレクティブにまとめて記述することも、個別のディレクティブに分けて記述することもできます。
<%@ page language="java" contentType="text/html; charset=UTF-8" buffer="16kb" errorPage="/error.jsp" %>
これらの属性を適切に組み合わせることで、文字化けの防止、エラー処理の一元化、パフォーマンスの調整など、JSPページの品質と保守性を高めることができます。
-
C#のプリプロセッサディレクティブとは?種類と使い方をわかりやすく解説
プリプロセッサディレクティブとはプリプロセッサディレクティブとは、実際のコンパイルが開始される前に、コンパイラへ情報の前処理(プリプロセス)を指示するための命令です。シンボルの定義や条件付きコンパイルなど、ソースコードのコンパイル方法を制御したい場面で活用されます。すべてのプリプロセッサディレクティブは「#」で始まり、1行の中でディレクティブより前に記述できるのは空白文字だけです。また、プリプロセッサディレクティブはステートメント(文)ではないため、行末にセミコロン(;)を付ける必要はありません。C#の主なプリプロセッサディレクティブ一覧No.ディレクティブと説明1#defineシンボルと呼ば
-
C#のConditional属性(条件付き属性)とは?基本構文と使い方を実例で解説
属性(Attribute)は、プログラムにメタデータを追加するための仕組みです。コンパイラへの指示や、コメント・説明文、メソッドやクラスに関する付加情報などをコードに埋め込むことができます。Conditional属性とはConditional属性は、あらかじめ定義されている属性の一つで、指定したプリプロセッサ識別子(シンボル)が定義されている場合にのみ実行される「条件付きメソッド」をマークします。この属性を使用すると、Debug や Trace など、指定されたシンボルの値に応じてメソッド呼び出しの条件付きコンパイルが行われます。たとえば、デバッグ中に変数の値を表示したい場合などに活用できます