[TIL] JSP : EL & JSTL
表示言語(EL)
Expression language略語で見ると、Java構文を減らすために設計された構文です.
きほんけいじょう
デフォルトでは、内部には算術、関係(比較サイズ)、条件(3つの条件式)、論理(&,|...)が含まれます.などを使用できます.空という特殊な演算子があり、適用するオブジェクトの値が空の場合はtrueを返します.
例)${空の変数}
JAvaコードの変数はJSTLで単独で使用する必要があります.
例:
下のコード
JSTLの使用
式でrequestに送信されるパラメータを受信
簡単に手に入る.
同じパラメータの名義でリクエストを複数回提出すると、順番に受け入れられます.
リクエストパラメータを受信したときと同じ
JSTL
デフォルトでは、アクションラベルはユーザー専用で、単独で作成して使用できますが、標準がないため、ラベルに雨後のタケノコが多すぎて分岐現象が発生し、jsp開発者が標準となるアクションラベルを作成しました.
それがJSTLです.
JSTL機能別タグ付け基本機能=c 形式化=fmt データベース操作=sql XML処理=x 関数処理=fn JSTLライブラリの読み込み
まずGoogleでJSTLを検索し、対応する圧縮ファイルを取得して分解し、jarファイルをプロジェクトのWEB-INFのlibフォルダに入れて適用します.
その後、jspファイルにロードして使用すると、
エディタを使用する場合、uri=を入力するとアドレス値のリスト形式が自動的に完了するので、必要なJSTLを選択できます.
JSTLC(core)タグの動作タグタイプ
タグ
変数に値を格納するタグ.
タグ
宣言変数のタグを削除します.逆も同様です.タグ
条件式を作成できるタグタグ
Javaのswitch文のタグを置換タグ
繰り返し実行されるタグで、主にアレイ処理に使用されます.
forEachアクションラベルで使用可能なプロパティは、配列のインデックス値または繰返し回数を知ることができます.
${status.index}を使用して配列のインデックス値を取得します.
${status.cont}を使用して配列の繰返し回数を取得します.
first,lastプロパティ
varStatusで使用可能な属性名と同じです
firstは配列の最初のものを選択します.
Lastは配列の最後の1つを選択します.
主に最初の文または最後の文で使用され、条件を与えたい場合に使用されます.
varStatusが提供するプロパティ.
繰り返し回数を指定できます.
endは繰り返し使用する最後のプロジェクトのindexです
最初のindexから最後のindexまでのみ繰り返します.
Stepプロパティ
begin、endプロパティを使用して増分を指定できます.
タグ
文字列を区切り値で区切り、配列のアクションタグを返します.タグ
jspのincludeラベルのように、他のページの内容を含むために使用されます.ただし、importラベルは、このページを変数に含めることができます.タグ
繰り返し使用するurl値を変数に格納するタグタグ
response.sendRedirect()メソッドと同じ機能を持つタグ.
指定したページに移動ラベル
出力されたアクションラベルタグ
例外処理フラグ
いろいろなマークがありますが、一番役に立つのはfotmateDateです.
Expression language略語で見ると、Java構文を減らすために設計された構文です.
きほんけいじょう
${...}
耐食性を$と{}で表します.デフォルトでは、内部には算術、関係(比較サイズ)、条件(3つの条件式)、論理(&,|...)が含まれます.などを使用できます.空という特殊な演算子があり、適用するオブジェクトの値が空の場合はtrueを返します.
例)${空の変数}
JAvaコードの変数はJSTLで単独で使用する必要があります.
例:
<%
String input = null;
%>
上記java変数をjspファイルに宣言すると、下のコード
${empty input}
利用可能ではありません.JSTLの使用
<c:set var="input" value="<%input%>"/>
一度に変数として表すことができます.式でrequestに送信されるパラメータを受信
簡単に手に入る.
${param.인자}
또는
${param["인자"]}
前述したように、パラメータに格納されているデータを受信してインポートできます.同じパラメータの名義でリクエストを複数回提出すると、順番に受け入れられます.
${paramValues.인자}
としては、通常JSTLの繰り返し文アクションタグとともに使用される.<c:forEach items="${paramValues.인자}" var="변수">
${변수}
</c:forEach>
Javabinをリクエストにコミットするときの情報の取得リクエストパラメータを受信したときと同じ
${자바빈즈를 담아준 속성 이름.프로퍼티이름(멤버변수이름)}
또는
${자바빈즈를 담아준 속성 이름["프로퍼티이름(멤버변수이름)"]}
使用JSTL
デフォルトでは、アクションラベルはユーザー専用で、単独で作成して使用できますが、標準がないため、ラベルに雨後のタケノコが多すぎて分岐現象が発生し、jsp開発者が標準となるアクションラベルを作成しました.
それがJSTLです.
JSTL機能別タグ付け
まずGoogleでJSTLを検索し、対応する圧縮ファイルを取得して分解し、jarファイルをプロジェクトのWEB-INFのlibフォルダに入れて適用します.
その後、jspファイルにロードして使用すると、
<%@ taglib uri="경로주소값" prefix="uri값에 맞는 태그값"%>
上のコードは上に書いておけば使えます.エディタを使用する場合、uri=を入力するとアドレス値のリスト形式が自動的に完了するので、必要なJSTLを選択できます.
JSTLC(core)タグの動作タグタイプ
変数に値を格納するタグ.
<c:set var="변수명" value="${표현식내용}">
上記のように、式を使用してデータをバインドします.宣言変数のタグを削除します.逆も同様です.
<c:remove var="변수명">
条件式を作成できるタグ
<c:if test="${조건식}">
조건이 참일때 실행값
</c:if>
Javaのswitch文のタグを置換
<c:choose>
<c:when test="조건1"> 조건에 만족할때 값 </c:when>
<c:when test="조건2"> 조건에 만족할때 값 </c:when>
<c:otherwise> 위 조건에 아무것도 만족하지 않을때 값</c:otherwise>
</c:choose>
繰り返し実行されるタグで、主にアレイ処理に使用されます.
<c:forEach var="변수" items="${배열변수명}">
${변수}
//배열의 크기만큼 반복적 수행하며 원소 한개 출력
</c:forEach>
varStatusプロパティforEachアクションラベルで使用可能なプロパティは、配列のインデックス値または繰返し回数を知ることができます.
<c:forEach var="movie" items="${movieList}" varStatus="status">
<tr>
<td> ${status.index }</td>
<td> ${status.count }</td>
<td> ${movie }</td>
</tr>
</c:forEach>
例に示すように、プロパティをvarStatus=「status」に設定します.${status.index}を使用して配列のインデックス値を取得します.
${status.cont}を使用して配列の繰返し回数を取得します.
first,lastプロパティ
varStatusで使用可能な属性名と同じです
firstは配列の最初のものを選択します.
Lastは配列の最後の1つを選択します.
主に最初の文または最後の文で使用され、条件を与えたい場合に使用されます.
<c:forEach var="movie" items="${movieList}" varStatus="status">
<c:if test="${status.first}">시작</c:if>
${movie}
<c:if test="${not status.last}">, </c:if>
</c:forEach>
begin、endプロパティvarStatusが提供するプロパティ.
繰り返し回数を指定できます.
<c:forEach var="movie" begin="1" end="10" items="${movieList}" varStatus="status">
${movie}<c:if test="${not status.last}">, </c:if>
</c:forEach>
beginは繰り返し使用する最初のプロジェクトのindexですendは繰り返し使用する最後のプロジェクトのindexです
最初のindexから最後のindexまでのみ繰り返します.
Stepプロパティ
begin、endプロパティを使用して増分を指定できます.
<c:forEach var="movie" begin="1" end="10" step="2" items="${movieList}" varStatus="status">
${movie}<c:if test="${not status.last}">, </c:if>
</c:forEach>
Stepを与えると、指定した値に従って開始インデックスからより高いインデックス番号にジャンプし、繰り返しを実行します.文字列を区切り値で区切り、配列のアクションタグを返します.
<c:forTokens var="토큰을 저장할 변수" items="토큰으로 나눌 문자열" delims="구분자">
실행내용
</c:forTokens>
jspのincludeラベルのように、他のページの内容を含むために使用されます.ただし、importラベルは、このページを変数に含めることができます.
[]는 생략가능 속성
<c:import url="주소값" [var="변수이름"] [scope="영역"] [charEncoding="charEncoding"]>
</c:import>
繰り返し使用するurl値を変数に格納するタグ
[]는 생략가능 속성
<c:url value="주소값" [var="변수이름"] [scope="영역"]>
</c:url>
response.sendRedirect()メソッドと同じ機能を持つタグ.
指定したページに移動
[]는 생략가능 속성
<c:redirect url="주소값" [context="경로명"]>
出力されたアクションラベル
[]는 생략가능 속성
<c:out value="값" [default="기본값"]>
例外処理フラグ
<c:catch var="변수명">
예외가 발생할 수 있는 코드
</c:catch>
JSTL fmtタグの動作タグタイプいろいろなマークがありますが、一番役に立つのはfotmateDateです.
<c:set var="now" value="<%= new java.util.Date()%>">
<fmt:formatDate value="${now}" pattern="yyyy년 MM월 dd일 hh시 mm분 ss초"/>
現在の時間はモードで指定された形式で出力されます.Reference
この問題について([TIL] JSP : EL & JSTL), 我々は、より多くの情報をここで見つけました https://velog.io/@padd60/TIL-JSP-EL-JSTLテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol