JSTL(JavaServer Pages Standard Tag Library) - coreAdvertisementJSTL coreとは
アプリケーションのコアとなる、よく利用される機能のライブラリ。変数の操作や条件分岐、繰り返しなどの基本的な機能が一通り定義されている。
JSTL coreタグ一覧
catch
<c:catch var="catch_var">
<%
String str = null;
str.substring(0, 1);
%>
</c:catch>
<c:out value="${catch_var}"></c:out>
例外のtry-catch機構をカスタムタグで提供する。結果 java.lang.NullPointerException choose<c:choose> <c:when test="false">false</c:when> <c:otherwise>other</c:otherwise> </c:choose>条件分岐の利用。if - elseif - else形式。 結果 other if<c:if test="true"> true </c:if> <c:if test="false"> false </c:if>単純な条件分岐の利用。 結果 true import<c:import url="import.txt" />外部ファイルをインポートする。 import.txt import!!! 結果 import!!! forEach
<%
String[] for_each_array = {"array1","array2"};
request.setAttribute("for_each_array", for_each_array);
%>
<c:forEach items="${for_each_array}" var="value">
<c:out value="${value}"/><br>
</c:forEach>
コレクションや配列に対して繰り返し処理を実行する。結果 array1 array2 forTokens
<c:set var="token" value="value1,value2,value3"/>
<c:forTokens items="${token}" delims=","
var="value" varStatus="i" begin="0" end="100" step="1">
<c:out value="${value}"/><br>
</c:forTokens>
任意のtokenで区切られた文字列を、分解処理する。結果 value1 value2 value3 out
<c:set var="x" value="10"/>
<c:set var="y" value="20"/>
<c:out value="${x}"/> + <c:out value="${y}"/> = <c:out value="${x + y}"/>
<br/>
<c:out value="sample"/>
<br/>
<c:out value="sampl<em>e</em>" escapeXml="true"/>
<br/>
<c:out value="sampl<em>e</em>" escapeXml="false"/>
<br/>
<c:out value="${outnull}" default="default!!"/>
<br/>
<%@page import="java.util.*"%>
<%
String[] array = {"array1","array2"};
request.setAttribute("array", array);
List list = new ArrayList();
list.add("list1");
list.add("list2");
request.setAttribute("list", list);
Map map = new HashMap();
map.put("map1", "map_value1");
map.put("map2", "map_value2");
map.put("map3", "map_value3");
request.setAttribute("map", map);
%>
<c:out value="${array[0]}"/><br>
<c:out value="${list[1]}"/><br>
<c:out value="${map['map1']}"/><br>
param.name:<c:out value="${param.name}"/><br>
paramValues.name[0]:<c:out value="${paramValues.name[0]}"/><br>
paramValues.name[1]:<c:out value="${paramValues.name[1]}"/><br>
様々な形式の変数を出力処理する。結果 10 + 20 = 30 sample sample sample default!! array1 list2 map_value1 otherwise
chooseを参照。
param
redirectを参照。
redirect<c:redirect url="http://www.yahoo.co.jp"> <c:param name="param1" value="value1" /> <c:param name="param2" value="value2" /> </c:redirect>ページのリダイレクトを行う。 結果 http://www.yahoo.co.jp/?param1=value1¶m2=value2 remove<c:remove var="x" />不要になったパラメータを削除する。 set
<c:set var="x" value="10"/>
<c:set var="y" value="20"/>
<c:out value="${x}"/> + <c:out value="${y}"/> = <c:out value="${x + y}"/>
変数の宣言と値の設定。結果 10 + 20 = 30 url
<c:url value="http://www.yahoo.co.jp/" var="yahooUrl">
<c:param name="search" value="MyName"/>
</c:url>
<c:out value="${yahooUrl}"></c:out>
URLのエンコード結果 http://www.yahoo.co.jp/?search=MyName when
chooseを参照。
|