JSP ディレクティブ/宣言/式/スクリプトレット

 <%@ ~ %> ディレクティブ
page
:ページの属性・設定等の記述
 language="java" //使用言語の記述(不要)
 contentType="text/html; charset=UTF-8"
  //responseのエンコードの記述(必要)
 pageEncoding="UTF-8" //なんのエンコード?(必要)
 import="java.lang.*" //javaパッケージのインポート
          //javaとは記述が違うから注意
 errorPage="URL" //例外発生時のエラーページ指定(処理ページに記述)
 isErrorPage="true" //指定したエラーページ内で記述する

include:他のファイルを呼び出す
 file="URL" //URLにあるファイルの中身を
     //includeディレクティブ位置にコピー
     //header.html footer.htmlなどを用意して使用する

<%! ~ %> 宣言
変数・メソッドなどを宣言・定義する(初期化まで?)
位置的にどこで宣言をしたかは影響なく、ページ生成時に
宣言されているっぽい
宣言内で定義された変数はグローバル変数(メンバ変数)化する
request毎に更新される値をサーバーで保持する
セミコロン要る
<%! int number=1; %>

<%= ~ %> 式
なんかよくわかんないけど計算ができてHTML内に直接記述できる
そしてなんかよくわかんないけどセミコロンは要らない(なんで?)
<%= number*30 %>

<% ~ %> スクリプトレット
Javaを直接的に記述するところ
暗黙オブジェクトと言って、サーブレットでよく使用される
HttpServletRequest(request)/HttpServletResponse(response)
ServletResponse.getWriter(out)/Throwable.Exception(exception)
はあらかじめ宣言なしで使用できるように用意されている