28-jsp
5722 ワード
一、Jsp
1.1概念
jsp:java server pages,javaサーバページ
jspは特殊なページで、htmlにjavaコードのページを埋め込むことができます.jsp末尾
Javaコードの書き方を簡略化
jspの本質はサーブレットであり、jspページに初めてアクセスすると、このjspのjavaコードがコンパイルされ、実行されます.
jspが翻訳されたjavaコードはHttpJspBaseを継承し、HttpJspBaseはHttpServeretを継承する
1.2 jspスクリプト
jspでjavaコードのフォーマットを定義する
1.3 jspの組み込みオブジェクト
組み込みオブジェクト:jspページで手動で作成および取得する必要がなく、直接使用できるオブジェクト
jspには計9つの内蔵オブジェクトがあります *request -> HttpServletRequest *response -> HttpServletResponse *session -> HttpSession *application -> ServletContext out->JspWriter注: out.write():サービス側が出力コンテンツに応答する前に、出力コンテンツはoutバッファに 格納. response.getWriter().write():サービス側が出力コンテンツに応答する前に、出力コンテンツはresponseバッファに 格納. responseバッファはoutバッファよりも優先的にアクセスされるのでresponseを使用する.getWriter().write()出力の内容は必ずout.write()出力前 config -> ServletConfig page->現在のページのオブジェクトthis *pageContext -> pageContext 現在のページでデータ(ドメインオブジェクト)を共有する 他の8つの内蔵オブジェクト を取得する.
*exception -> Throwable
1.4 jspの命令
書式:
1.4.1 page
現在のjspページを構成するには、ページの最初の行に書く必要があります. language:現在のjspに埋め込まれている言語を示す contentType:現在のjspがクライアントに応答するときの符号化 を構成する. pageEncoding:現在のドキュメントに保存されている符号化フォーマット import:パイロット errorPage:現在のページに異常が発生した後、特定のページにジャンプし、errorPageによって構成され、仮想パス を書く必要はありません. isErrorPage:例外が発生した後にジャンプするページを設定 true:現在のページではexception内蔵オブジェクト を使用できます. false:デフォルト値、現在のページではexception内蔵オブジェクト は使用できません.
isELIgnored:現在のページがEL式を無視するかどうかを設定 true:EL式を無視することを示す、EL式は文字列のままデータ になる. false:デフォルト、EL式 を無視しない
1.4.2 include
指定した他のページを現在のページに埋め込む
1.4.3 taglib
ラベルライブラリのインポートに特化
1.5コメント
java:// /* */ /** */
css:/* */
js:// /* */
html:
jsp:
二、EL
1.1概念
コンセプト:Expression Languageエクスプレッション言語
役割:jspにおけるjavaコードの作成を簡略化し、データの取得に特化する
構文:${式}
注意: jspデフォルトではel式 がサポートされています. el式を無視する ページ内のすべてのel式を無視:jspのpage命令の下でisELIgnored=“true” を構成する指定されたel は無視されます.
1.2演算子演算子:+、-、*、/(div)、%(mod) 比較演算子:>、=、<=、=、!= 論理演算子:&&(and)、|(or)!(not) 空輸演算子:empty、役割:文字列、集合、配列オブジェクトがnullであるかどうか、または長さが0 であるかどうかを判断する.
1.3ドメインオブジェクトのデータの取得
構文:${ドメインオブジェクトの名前.キーの名前}
ドメインオブジェクトの名前: pageScope -> pageContext requestScope -> request sessionScope -> session applicationScope -> application
注意:指定されたドメインにこのキーがない場合、 は何も表示されません.は${キーの名前}に簡略化できます.この場合、pageScopeは、ドメインの範囲サイズに基づいて、小さい順にデータをクエリーします.
1.4オブジェクトの取得 カスタムオブジェクトの値構文:${ドメインオブジェクトの名前.キーの名前.属性名}本質:オブジェクトを呼び出すgetterメソッド、たとえば${user.name}user:キーの名前、name:getName->Name->name Listコレクションの要素構文を取得する:${ドメインオブジェクトの名前.キーの名前[インデックス]} . Mapコレクションの要素構文を取得します. ${ドメインオブジェクトの名前.キーの名前.Mapのキー} ${ドメインオブジェクトの名前.キーの名前["Map内のキー"]}
1.5 elを使用した仮想パスの動的取得
三、JSTL
3.1概念
コンセプト:jsp standard tag library,jsp標準ラベルライブラリ
Apache組織が提供するオープンソース苗費のjspラベルライブラリです
役割:jspページのjavaコードを簡略化する
3.2使用手順 jstl関連jarパッケージ、javaxをインポートする.servlet.jsp.jstl.jarとjstl-impl.jar タグライブラリの導入:jspでtaglib命令 を使用する.使用ラベル 3.3共通ラベル
3.3.1 ifプロパティ: test:受信条件式 条件式の結果がtrueである場合、ifラベル体コンテンツのコード が実行される.条件式の結果がfalseであればifラベル体コンテンツのコード は実行されない.
注意:c:ifラベルはelseラベルに対応していません.対立するelseが必要な場合は、c:if を再定義する必要があります.
コード 3.3.2 choose
c:chooseはjavaのswitchに相当します
c:chooseラベルのサブラベルc:when、javaのcaseに相当
c:whenの必須属性:test
c:chooseラベルのサブラベルc:otherwise、javaのdefaultに相当
プレゼンテーション:
3.4 forEach javaの通常のforループに相当 プロパティ begin:開始値 end:終了値 var:一時変数 step:ステップ長 varStatus:ループ状態のオブジェクト count:回数
コード javaの強化forサイクルに相当 プロパティ: items:コンテナオブジェクト var:一時変数 varStatus:ループ状態のオブジェクト index:インデックス count:回数
コード:
1.1概念
jsp:java server pages,javaサーバページ
jspは特殊なページで、htmlにjavaコードのページを埋め込むことができます.jsp末尾
Javaコードの書き方を簡略化
jspの本質はサーブレットであり、jspページに初めてアクセスすると、このjspのjavaコードがコンパイルされ、実行されます.
jspが翻訳されたjavaコードはHttpJspBaseを継承し、HttpJspBaseはHttpServeretを継承する
1.2 jspスクリプト
jspでjavaコードのフォーマットを定義する
: java , service
: java jsp servlet
: java service print() ,“=” ,
1.3 jspの組み込みオブジェクト
組み込みオブジェクト:jspページで手動で作成および取得する必要がなく、直接使用できるオブジェクト
jspには計9つの内蔵オブジェクトがあります
1.4 jspの命令
書式:
1.4.1 page
現在のjspページを構成するには、ページの最初の行に書く必要があります.
1.4.2 include
指定した他のページを現在のページに埋め込む
1.4.3 taglib
ラベルライブラリのインポートに特化
1.5コメント
java:
css:
js:
html:
jsp:
二、EL
1.1概念
コンセプト:Expression Languageエクスプレッション言語
役割:jspにおけるjavaコードの作成を簡略化し、データの取得に特化する
構文:${式}
注意:
\${ }
1.2演算子
1.3ドメインオブジェクトのデータの取得
構文:${ドメインオブジェクトの名前.キーの名前}
ドメインオブジェクトの名前:
注意:
1.4オブジェクトの取得
1.5 elを使用した仮想パスの動的取得
${ pageContext.request.contextPath }
三、JSTL
3.1概念
コンセプト:jsp standard tag library,jsp標準ラベルライブラリ
Apache組織が提供するオープンソース苗費のjspラベルライブラリです
役割:jspページのjavaコードを簡略化する
3.2使用手順
3.3.1 if
注意:c:ifラベルはelseラベルに対応していません.対立するelseが必要な場合は、c:if を再定義する必要があります.
ログイン
ようこそ
c:chooseはjavaのswitchに相当します
c:chooseラベルのサブラベルc:when、javaのcaseに相当
c:whenの必須属性:test
c:chooseラベルのサブラベルc:otherwise、javaのdefaultに相当
プレゼンテーション:
A
B
C
D
E
3.4 forEach
${t }---${s.count }
${t }---${s.index }---${s.count }
items:
var: