JakartaEE JSPの基本タグを完全解説!初心者でもわかる<%= %>と<%! %>の使い方
生徒
「先生、JakartaEEのJSPにはいろいろなタグがあるって聞いたんですが、特に<%= %>と<%! %>ってどういう役割なんですか?」
先生
「とても大事なポイントですね。<%= %>は値を直接出力するときに使い、<%! %>は変数やメソッドを宣言するときに使います。」
生徒
「なるほど!同じように見えるけど、使い方が違うんですね。」
先生
「はい。それでは具体的な例を交えながら説明していきましょう。」
1. JSPの基本タグとは?
JakartaEEのJSP(Jakarta Server Pages)では、Javaコードを埋め込むためにいくつかの基本的なタグが用意されています。その中でも代表的なのが<%= %>と<%! %>です。
これらはどちらもJavaコードを扱うための構文ですが、役割が大きく異なります。初心者が混乱しやすい部分なので、しっかり整理して覚えることが大切です。
2. <%= %>(式タグ)の使い方
式タグは、<%= %>の形で記述し、Javaの式を評価して結果を直接HTMLに出力します。例えば次のように書きます。
<html>
<body>
<h1>ようこそ!</h1>
<p>現在の時刻は <%= new java.util.Date() %> です。</p>
</body>
</html>
この例では、JavaのDateオブジェクトを生成し、その結果が自動的に文字列としてHTMLに埋め込まれます。<%= %>は短く書けるので、変数やメソッドの結果を表示する際によく使われます。
3. <%! %>(宣言タグ)の使い方
宣言タグは、<%! %>の形で記述し、JSP全体で利用できる変数やメソッドを定義します。例えば次のように使います。
<%!
private int count = 0;
public String greet(String name) {
return "こんにちは、" + name + "さん!";
}
%>
<html>
<body>
<p><%= greet("太郎") %></p>
<p>アクセス回数: <%= ++count %></p>
</body>
</html>
この例では、メソッドgreetを宣言し、さらにアクセス回数を管理する変数countを使っています。宣言タグで定義したものは、JSPがサーブレットに変換された際にクラスメンバとして扱われるため、スクリプトレットや式から利用できます。
4. <%= %>と<%! %>の違いを整理しよう
初心者が特に混乱しやすいのは、この2つのタグの違いです。整理すると次のようになります。
- <%= %> は「その場で評価した結果を出力」する。
- <%! %> は「変数やメソッドを宣言」して再利用できる。
つまり、表示したいときは<%= %>、メソッドや変数を定義したいときは<%! %>を使うと覚えると理解しやすいです。
5. 初心者が押さえるべき活用ポイント
JakartaEEのJSPを使いこなすためには、これらの基本タグを正しく理解することが欠かせません。特に次のポイントを意識しましょう。
<%= %>は値を画面に出力するために使う。<%! %>は変数やメソッドを定義して処理をまとめるために使う。- 宣言タグを使いすぎるとコードが複雑になるため、必要な範囲で利用する。
- ビジネスロジックはできるだけサーブレットやJavaクラスに分け、JSPは表示に専念させる。
こうした基本を理解すれば、JSPを使った動的Webページ開発がよりスムーズになります。検索エンジンでも「JSP 基本タグ」「JSP 式 宣言 違い」といったキーワードで調べられることが多いため、しっかり押さえておくと学習効率が高まります。