JSP の基本構文

このセクションでは、次の内容を含む JSP の基本構文について説明します。

JSP テンプレート テキストの挿入

JSP には通常、HTML テキストと JSP 要素の両方が使用されます。JSP 要素は JRun により解釈されます。JSP 要素からの出力はすべて、HTML テキストとともにクライアントに返されます。

JSP では、テンプレート テキストは JSP 要素の外側にあるテキストなので、JRun によって解釈されることはありません。テンプレート テキストは、変更されることなく、クライアントに直接返されます。JSP にある HTML テキストは、すべてテンプレート テキストと見なされます。

たとえば、<% タグと %> タグの間にある Java コードを除いて、次のページにあるものはすべて、テンプレート テキストと解釈されます。

<html>
<head>
<title>Greetings</title>
</head>
<body>
<% for (int i=0; i < 5; i++) out.println("<h1>Hello World!</h1>"); %>
</body>
</html>

空白文字の使用

HTML では通常、空白文字は重要ではありません。JSP ファイルのテンプレート コードに含まれる空白文字はすべて、JSP ファイルに入力されているとおりにクライアントに返されます。

開始タグと終了タグの配置

開始タグと終了タグ、およびこれらのタグで囲まれた本文を持つ JSP 要素については、同じファイルにこの 2 つのタグを入れる必要があります。開始タグと終了タグを別々のファイルに入れることはできません。

たとえば、JSP スクリプトレットの構文は <% scriptlet %> です。開始タグ (<%) と終了タグ (%>) は両方とも同じファイルになければなりません。

属性値の引用

JSP 要素に対する属性値はすべて、一重引用符または二重引用符を使用して引用する必要があります。たとえば、次の例にある page 要素により、属性 contentType を使用して、JSP の出力の MIME タイプが text/plain に設定されます。

<%@  page contentType = "text/plain" %>

属性値自体に同じタイプの引用符 (一重引用符または二重引用符) が含まれている場合は、引用符の前にエスケープ文字 (¥) を付けます。エスケープ文字の次に来る文字は、JSP パーサーでは無視されます。属性の引用符には、次のエスケープ シーケンスを使用します。

また、引用符に HTML 文字参照を使用することもできます。たとえば、属性値では二重引用符の代わりに、文字参照 &quot; を挿入します。

エスケープ文字

属性値の引用符をエスケープし、さらに JSP の別の領域では次のような文字をエスケープする必要があります。

コメントの挿入

JSP のコメントには、次の 2 種類を使用できます。クライアントに返されない JSP 自体に対するコメントと、ページの出力の一部としてクライアントに返されるコメントです。

このセクションでは、これらのコメントについて説明します。

JSP に関するコメントの記述

JSP コメントは、JSP 自体に情報を追加するために使用されます。このコメントが JSP の出力の一部としてクライアントに出力されることはありません。

JSP コメントの構文は次のとおりです。

<%-- コメント文字列... --%>

また、ページで使用されているスクリプト言語のコメント構文を使用して、コメントを追加することもできます。たとえば、ページのスクリプト言語として Java を使用している場合、次の形式でコメントを追加できます。

<% /** Java コメント **/ %>

JavaScript で記述されたスクリプトにコメントを入れる場合も、同様の構文を使用します。

クライアントへのコメント出力

クライアントに返される JSP の応答出力に表示されるコメントを生成するには、HTML コメント構文を使用します。構文は次のとおりです。

<!-- コメント -->

コメント内部に JSP 式を入れることにより、動的なコメントを作成できます。次の例では、実行時に評価される式の入ったコメント文字列がクライアントに出力されます。

<%! String PageName = "Example Comment Page"; %>
...
<!-- ページに対するコメント:<%= PageName %> -->

JSP における相対 URL の指定

JSP 要素では、相対 URL 指定を使用して、別の JSP、Java サーブレット、同じページにある別のエンティティなどを参照できます。参照元 JSP での URL の指定方法に応じて、URL を参照元 JSP を含むアプリケーション、または参照元 JSP の場所に相対させることができます。