タグライブラリの種類
使用方法
1.jarファイルを入手
https://tomcat.apache.org/download-taglibs.cgi
ダウンロードするファイル
・taglibs-standard-impl-1.2.5.jar
・taglibs-standard-jstlel-1.2.5.jar
・taglibs-standard-spec-1.2.5.jar
2.jarファイルを配置
ダウンロードしたjarファイルを対象プロジェクトの「WEB-INF\lib」配下に配置する
3.タグライブラリを宣言
<%@ taglib prefix="prefix名" uri="TLDファイルのURI" %> Coreタグの場合 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
Coreタグ
c:if(単一の条件分岐)
elseif、elseは無い。chooseを使うこと
<c:if test="条件式" [var="条件式の結果を格納する変数"] [scope="変数を格納するスコープ"]> 条件式がtrueの場合の処理 </c:if> 例.<c:if test="${offerForm.name != null}">サンプル</c:if>
c:choose(複数の条件分岐)
whenが複数ある場合は、初めにヒットしたタグの処理が実行される。
<c:choose> <c:when test="条件式">条件に一致した場合の処理</c:when> <c:when test="条件式">条件に一致した場合の処理</c:when> <c:otherwise>全ての条件に一致しなかった場合の処理</c:otherwise> </c:choose>
c:forEach(繰り返し)
回数指定による繰り返し
<c:forEach begin="開始値" end="終了値" [var="カウンタ変数名" ] [step="増分値"]> 繰り返し処理 </c:forEach> 例. 「c:forEach」1~5まで増分2で繰り返し 「c:out」で現在のindex値を出力 <c:forEach begin="1" end="5" step="2" var="index"> index:<c:out value="${index}"/> </c:forEach>
コレクション・配列の要素を参照しながら繰り返し
<c:forEach var="コレクション・配列の各要素を表す変数名" items="コレクション・配列を参照する変数名" varStatus="ループ状態のステータスを格納する変数名"> 例. <c:set var="str" value="A,B,C,D,E" /> <c:forEach var="item" items="${str}" varStatus="status"> <c:out value="${status.index}" />:<c:out value="${item}" /> </c:forEach>
c:set(変数を設定)
var: <c:set var="変数名" value="初期値" [scope="スコープ"] /> 例.<c:set var="form" value="${offerForm}" scope="request" />
target: <c:set target="オブジェクト" property="プロパティ名" value="設定値" /> 例.<c:set target="${fruits}" property="ぶどう" value="300" /> mapでの例。targetにmap名、propertyにキー、valueに値を指定
c:out(変数を出力)
<c:out value="出力値" [default="デフォルト値"] [escapeXml="ブール値"] /> 例. <c:out value="${offerForm.name}" /> <c:out value="${offerForm.name}" default="non" escapeXml="false" />
c:remove(変数を削除)
<c:remove var="変数名" [scope="スコープ"] />