c:out,c:set,c:remove

JSTL.png
<%@ page contentType="text/html;charset=Windows-31J" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html>

<head>
<title>JSTL Exam</title>
</head>

<body>

<table border="1">
<tr>
	<th></th>
	<th>JSP</th>
	<th>実行結果</th>
	<th>説明</th>
</tr>

<tr>
	<td></td>
	<td> <c:set var="message" value="<b>HELLO</b>"/></td>
	<td><c:set var="message" value="<b>HELLO</b>"/></td>
	<td>値の格納</td>
</tr>

<tr>
	<td valign="top"></td>
	<td valign="top"> <c:out value="\${message}" /></td>
	<td valign="top"><c:out value="${message}" /></td>
	<td>
		通常の出力(escapeXml のデフォルト値は "true")<br/>
		次の5つがエスケープされる。<br/>
		<table border="1">		
			<tr><td><  </td><td>→</td><td> &amp;lt;  </td></tr>
			<tr><td>>  </td><td>→</td><td> &amp;gt;  </td></tr>
			<tr><td>&amp; </td><td>→</td><td> &amp;amp; </td></tr>
			<tr><td>"</td><td>→</td><td> &amp;quot;</td></tr>
			<tr><td>'</td><td>→</td><td> &amp;apos;</td></tr>
		</table>
		<br/>
		文字列"<b>" が、HTML上は、"&amp;lt;b&amp;gt;" と出力されている
	</td>
</tr>

<tr>
	<td></td>
	<td> <c:out value="\${message}"  escapeXml="false"/></td>
	<td><c:out value="${message}"  escapeXml="false"/></td>
	<td>escapeXml="false"なので、<b>タグが有効になっている</td>
</tr>

<tr>
	<td></td>
	<td> <c:remove var="message"/></td>
	<td><c:remove var="message"/></td>
	<td>値の削除</td>
</tr>

<tr>
	<td></td>
	<td> <c:out value="\${message}" default="no message" /></td>
	<td><c:out value="${message}" default="no message"/></td>
	<td>defalut属性(valueがnullのとき)</td>
</tr>

</table>

</body>
</html>

c:forEach,c:if

JSTL2.png
<%@ page contentType="text/html;charset=Windows-31J" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html>

<head>
<title>JSTL Exam 2</title>
</head>

<body>

<% 
  java.util.List list = new java.util.LinkedList();
  list.add("1");
  list.add("2");
  list.add("1");
  list.add("2");
  list.add("1");
  list.add("2");
  pageContext.setAttribute("list" , list);
%>


<c:forEach items="${list}" var="item" varStatus="stat"><br/>

<table border="1">
  <tr>
    <th>itemの評価</th>
    <th>stat.begin</th>
    <th>stat.count</th>
    <th>stat.end</th>
    <th>stat.index</th>
    <th>stat.step</th>
    <th>stat.first</th>
    <th>stat.last</th>
  </tr>
  
  
  <c:forEach items="${list}" var="item" varStatus="stat">
  <tr>
    <td>
      <c:if test="${item % 2 == 0}">
        <c:out value="${item} は、偶数"/>
      </c:if>
      <c:if test="${item % 2 == 1}">
        <c:out value="${item} は、奇数"/>
      </c:if>
    </td>
    <td>${stat.begin}</td>
    <td>${stat.count}</td>
    <td>${stat.end}</td>
    <td>${stat.index}</td>
    <td>${stat.step}</td>
    <td>${stat.first}</td>
    <td>${stat.last}</td>
    </tr>
  </c:forEach>
</table>

<hr/>

<c:forEach begin="1" end="10" step="2" var="item" varStatus="stat"><br/>

<table border="1">
  <tr>
    <th>itemの評価</th>
    <th>stat.begin</th>
    <th>stat.count</th>
    <th>stat.end</th>
    <th>stat.index</th>
    <th>stat.step</th>
    <th>stat.first</th>
    <th>stat.last</th>
  </tr>
  
  
  <c:forEach begin="1" end="10" step="2" var="item" varStatus="stat">
  <tr>
    <td>
      <c:if test="${item % 2 == 0}">
        <c:out value="${item} は、偶数"/>
      </c:if>
      <c:if test="${item % 2 == 1}">
        <c:out value="${item} は、奇数"/>
      </c:if>
    </td>
    <td>${stat.begin}</td>
    <td>${stat.count}</td>
    <td>${stat.end}</td>
    <td>${stat.index}</td>
    <td>${stat.step}</td>
    <td>${stat.first}</td>
    <td>${stat.last}</td>
    </tr>
  </c:forEach>
</table>

</body>
</html>

c:forTokens,c:choose,c:when,c:otherwise

JSTL3.png
<%@ page contentType="text/html;charset=Windows-31J" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<html>

<head>
<title>JSTL Exam 3</title>
</head>

<body>

<c:forTokens items="花子&愛子&太郎&次郎&ピー子&おすぎ"<br/>
var="item" varStatus="stat" delims="&"><br/>

<table border="1">
  <tr>
    <th>itemの評価</th>
    <th>stat.begin</th>
    <th>stat.count</th>
    <th>stat.end</th>
    <th>stat.index</th>
    <th>stat.step</th>
    <th>stat.first</th>
    <th>stat.last</th>
  </tr>
  
  <c:forTokens
    items="花子&愛子&太郎&次郎&ピー子&おすぎ"
    var="item"
    varStatus="stat"
    delims="&">

  <tr>
    <td>
      <c:out value="${item}"/> is 
      <c:choose>
        <c:when test="<%= ((String)pageContext.getAttribute("item")).endsWith("子") %>">
          female
        </c:when>
        <c:when test="<%= ((String)pageContext.getAttribute("item")).endsWith("郎") %>">
          male
        </c:when>
        <c:otherwise>
          unknown
        </c:otherwise>
      </c:choose>
    </td>
    <td>${stat.begin}</td>
    <td>${stat.count}</td>
    <td>${stat.end}</td>
    <td>${stat.index}</td>
    <td>${stat.step}</td>
    <td>${stat.first}</td>
    <td>${stat.last}</td>
    </tr>
  </c:forTokens>
</table>

</body>
</html>

Java SJC-WC JSP#JSTL


添付ファイル: fileJSTL.png 559件 [詳細] fileJSTL2.png 514件 [詳細] fileJSTL3.png 423件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS   sitemap
Last-modified: 2007-01-04 (木) 15:56:47 (3620d)
ISBN10
ISBN13
9784061426061