JSPとは
簡単にいうと「サーブレットで表現していたコードを簡単に表せる」もの。
※HTMLとJavaのハイブリットのような感じ。
もう少し詳しくいうと、
これまで、レスポンス生成の部分でPrintWeiter型のオブジェクトを使う場合、一行ずつprintln()メソッドを使ってHTMLを書き出していた。
Javaの中でHTMLのコードを書いているような感じでとても煩わしく、時間がかかっていた。
そこで、JSPを使うことで、大部分は通常のHTMLと同じ感じで書けるようになり、一部Javaの機能を使うことで、煩わしさを解消している。
JSPを習得することで、レスポンスの部分を素早く描くことができる。
JSP実行の流れ
①Webアプリ開発者がJSPファイルを作成(コンテキストルートに配置)
②内部的(Webコンテナが)にJSPファイルがJavaファイルへ変換
③コンパイルを行い、Javaファイルをクラスファイルに変換
④クラスをインスタンス化
⑤サーブレットインスタンスが動作してレスポンスを返す
ほとんどが内部的に行われることなので、開発者はJSPファイルを作成して、適切なフォルダに配置しておけば大丈夫。
JSPのタグ
JSPのタグは大きく分けて
- コメント JSPのコメント
- スクリプト スクリプトレット
式
宣言 - ディレクティブ pageディレクティブ
includeディレクティブ
taglibディレクティブ - アクションタグ 定型的な処理を示す
がある。
⚪️スクリプトレット
→この中ではJavaのソースコードを埋め込むことができる
(<% Javaソースコード %>)
→1つのJSPファイル内で任意の箇所に複数記述できる。
⚪️式
→Javaの式を指定することができ、その値を表示する。
(<%= Javaの式 %>)
⚪️JSPのコメント
→任意の場所にコメントを書ける。
(<%– コメント –%>)
※スクリプトレットの中のコメントはJavaの形式で書く(// コメント)
🔴ディレクティブ
→JSPを処理するために必要な情報をWebコンテナに伝えるためのタグ。
🔴pageディレクティブ
→JSPファイル全体の情報を記述する。
(<%@ page 属性名=”属性値” %>)
🔴includeディレクティブ
→定型的な内容を複数のJSPで共有するときに使用する。
(<%@ include file=”ファイル名” %>)
サーブレットとJSPの連携
サーブレットの強み:リクエストを受けて処理を行える。
JSPの強み:HTML形式のレスポンス生成ができる。
→サーブレット・JSPでそれぞれの処理を分割すれば効率が良くなる。
①効率が上がる
②担当署の役割分担がしやすい
③狭い範囲で考えやすい(ミスが少なくなる)
④解像に耐えられる
コメント