JSP(Java Server Pages)は、サーブレットと同じくサーバーサイドプログラムの技術。サーブレットと同じく、ブラウザからのリクエストを受け取り、HTMLを出力してレスポンスとしてブラウザに返す。JSPはHTMLにJavaのコードを埋め込む形に書ける。サーブレットと比べて、HTMLの出力がラクな上、HTMLとJavaのコードを分離して書けるのでわかりやすい。
例:
<%@ page language="java contentType="text/html; charset=UTF-8">
<%@ page import="java.util.Date" %>
<%
Date date = new Date();
%>
<html>
<head>
<meta charset="UTF-8">
<title>日付</title>
</head>
<body>
今日の日付は<%= date %>です。
</body>
</html>
JSPファイル中の、HTML部分をテンプレート、Javaのコード部分をスクリプトという。
Javaのコードを記述する部分。変数の宣言、if文など。
<% Javaのコード %>
スクリプト式(または単に「式」)
変数やメソッドの戻り値などを出力させる。
<%= Javaのコード %> ※セミコロンは不要
コメントを入れられる。
<%-- コメント --%>
pageディレクティブ
JSPファイルに関するさまざまな設定を行える。
<%@ page 属性名="値" %>
よく使われる属性はcontentType属性とimport属性。
contentType属性
HTMLを出力し、文字コードがUTF-8の場合
<%@ page contentType="text/html; charset=UTF-8" %>
import属性
複数のクラスをimportする場合、カンマで区切って並べて書く。もしくはpageディレクティブを複数に分けて書く。
<%@ page import="java.util.Date,java.util.ArrayList" %>
または
<%@ page import ="java.util.Date" %>
<%@ page import ="java.util.ArrayList %>
参照:「スッキリわかるサーブレット&JSP入門 第2版」