JSPとは、HTMLファイルにJavaコードを埋め込んでおき、クライアントの要求に応じてコードを実行、処理結果のみをクライアントに送信する技術です。
1、
JSPは実はサーブレットです。最初にリクエストがあった時にJSPファイルをサーブレットに変換されます。
JSPかのソースファイルから作成された中間ファイルは、Tomcatではデフォルトでworkディレクトリ以下に作成されます。
(何だかJSPの挙動がおかしいの場合は、一度このworkの下を全て削除すると正常になることがあります)
2、
JSPはサーブレットと違って事前にコンパイルする必要がありませんし、web.xmlへの登録も不要です。
3、
JSPの式:<%= 1+1 %>
スクリプトレット式:<% xxx source code xxx %>
コメント:<%-- コメント内容 --%>
ディレクティブ:<%@<ディレクティブ名> <属性> = <値> %>
4、暗黙オブジェクト
・out: ブラウザへの出力やバッファ処理など主に出力系のメソッドが定義されています
・request: クライアントから送信されるパラメータデータ、ヘッダー情報、Cookieを取得する際に使用します
・response: クライアントにヘッダー情報、HTTPステータス、Cookieなどを返す際に使用します
・session: クライアントとサーバ間のセッション管理に使用します
・application: applicationスコープを持つデータの管理、コンテキスト全体で共有する初期化パラメータの取得などに使用します
・config: Servletプログラム、JSPプログラム個々の初期化パラメータを取得する際に使用します
・pageContext: このオブジェクトはJSPで使われるすべてのオブジェクトを管理することができます。
・exception: JSPプログラムの例外処理に使用します
5、コンテンツタイプの指定
JSPはpageディレクティブでコンテンツタイプを指定します。pageディレクティブはページ全体に関する設定です。
式:<%@page contentType="<MIMEタイプ>; charset=<文字エンコーディング>" %>
6、import宣言
式:<%@page import="クラス完全名1, クラス完全名2"%>
7、サーバのルート、Webアプリケーションのルート
JSPの
・サーバのルートの取得: <P><A HREF="/">サーバーのルート</A>
・Webアプリケーションのルートの取得: <P><A HREF="<%=request.getContextPath()%>">Webアプリケーションのルート</A>
(requestは、HttpServletRequestクラスを表す暗黙オブジェクトです。)
8、
・コンテキスト: アプリケーションサーバは、個々のWebアプリケーションをコンテキストという単位で管理します。
・コンテキストルート: Webアプリケーションの最上位のパスは、コンテキストルートと呼ばれます。
・コンテキストパス: Webサーバ上のコンテキストルートへのパスをコンテキストパスと言います。
9、JSPからサーブレットを呼び出す
JSPにサーブレットのURLへのリンクを作成するだけです。