条件标签
<%@ page contentType=”text/html; charset=GB2312”%>
<%@ taglib prefix=”c” uri=”http://java.sun.com/jsp/jstl/core”%>
<c:if>标签
说明:用于实现java语言中的if语句功能
语法:<c:if test=”逻辑表达式” var=”代表逻辑表达式的值的命名变量的名字” scope=”{page|request|session|application}”/>
示例:
<c:if test=”${param.username==’Tom’}” var=”result” scope=”request”/>
${result}
<c:choose>、<c:when>和<c:otherwise>标签
说明:这三个标签连在一起使用,可以实现java语言中的if-else语句的功能。
示例:
<c:choose>
<c:when test=”${empty param.username}”>
UnKnown user.
</c:when>
<c:when test=”${param.username==’tom’}”>
${param.username} is manager
</c:when>
<c:otherwise>
${param.username} is employee
</otherwise>
</choose>
迭代标签
<c:forEach>标签
说明:用于遍历集合中的对象,并且能重复执行标签主体。
语法:
<c:forEach var=”代表集合中的一个元素的命名变量的名字” items=”集合”>
标签主体
</c:forEach>
示例1:
<%@ page import=”java.util.HashSet” %>
<%
HashSet names = new HashSet();
name.add(“Tom”);
name.add(“Mike”);
name.add(“Linda”);
%>
<c:forEach var=”name” items=”<%=names %>”>
${name}
</c:forEach>
<c:forEach>标签的varStatus属性
<c:forEach>标签的varStatus属性用于设定一个javax.servlet.jsp.jstl.core.LoopTagStatus类型的命名变量,它位于NESTED范围,这个命名变量包含了从集合中取出的当前元素的状态信息。
l count:当前元素在集合中的序号,从1开始计数
l index:当前元素在集合中的索引,从0开始计数
l first:当前元素是否是集合中的第一个元素
l last:当前元素是否是集合中的最后一个元素
示例2:
<c:forEach var=”name” item=”<%=names %>” varStatus=”status”>
<c:when test=”${status.last}”>
<font color=”red>${name}</font>
</c:when>
<c:otherwise>
<font color=”green”>${name}</font>
</c:otherwise>
</c:forEach>
<c:forEach>标签中的begin、end和step属性
l begin:起始索引
l end:结束索引
l step:步长
示例3:
<%@ page import=”java.util.ArrayList” %>
<%
ArrayList colors = new ArrayList();
colors.add(“yed”); //inde:0
colors.add(“yellow”); //inde:1
colors.add(“blue”); //inde:2
colors.add(“green”); //inde:3
colors.add(“black”); //inde:4
%>
<c:set var=”colors” value=”<%=colors%>”
<c:forEach var=”color” items=”${colors}” begin=”1” end=”3” step=”2”>
${color}
</for:Each>
以上代码打印结果为:yellow green
<c:forEach>可以遍历的集合
l Java.util.Set、java.util.List、java.util.Map、java.util.Iterator和java.util.Enumeration接口的实现类
l Java数组
l 以逗号(“,”)分割的字符串
示例4:
<%@ page import=”java.util.HashMap” %>
<jsp:useBean id=”weeks” scope=”application” class=”java.util.HashMap”/>
<c:set target=”${weeks}” property=”one” value=”Mondy”/>
<c:set target=”${weeks}” property=”two” value=”Tuesday”/>
<c:forEach var=”entry” items=”${weeks}”>
${entry.key} : ${entry.value}
</c:forEach>
以上打印结果为:two:Tuesday one:Monday
示例5:
<%
String[] fruits = {“apple”,”orange”,”banana”,”peal”,”grape”};
%>
<c:forEach var=”fruit” items=”<%=fruits%>” end=”2”>
${fruit}
</c:forEach>
以上结果打印为:apple orange banana
示例6:
<c:forEach var=”name” items=”Tom,Mike,Linda”>
${name}
</c:forEach>
<c:forToken>标签
说明:<c:forTokens>标签用于遍历字符串中特定分隔符的子字符串,并且能重复执行标签体
语法:
<c:forTokens var=”代表子字符串的命名变量的名字” items=”被分隔的字符串” delims=”分隔符”></forEach>
示例:
<c:forTokens var=”name” items=”Tom:Mike:Linda” delims=”:”>
${name}
</forTokens>
分享到:
相关推荐
EL&JSTL笔记学习笔记
JSP四大域对象和JSTL、EL表达式
JSTL 入门 探讨 core.htm JSTL 入门 表达式语言.htm jstl-1_1-mr2-spec.pdf JSTL笔记.txt
jstl资料笔记笔记笔记笔记jstl资料笔记笔记笔记笔记jstl资料笔记笔记笔记笔记
2.jsp运行原理-----jsp本质就是servlet(面试) jsp在第一次被访问时会被Web容器翻译成servlet,在执行 过程: 第一次访问---->helloServlet.jsp---->helloServlet_jsp.java---->编译运行 ...
移动开发的小白树懒在学习web的技术,为以后的移动开发打下坚实的基石...
方立勋jstl标签库,欢迎大家下载
jstl标签学习笔记
el和jstl学习笔记 很好很全 欢迎瞎子
JSTL学习笔记,对使用JSTL标签使用者非常有帮助
jstl标签上课笔记
jstl总结资料自己的学习笔记jstl总结资料自己的学习笔记jstl总结资料自己的学习笔记
JSTL & EL 学习笔记JSTL & EL 学习笔记
EL+JSTL的相关笔记
Ognl_JSTL_学习笔记
EL表达式和JSTL标签库笔记
我的JSTL和EL表达式的精华版笔记,有完美的排版和书签,可以代替你的参考书。包里含有1.0及1.2的jar包。用了几年了,你可以继续加入你的东西方便其它使用者。
JSTL学习笔记共享给大家
最近在JSTL in action 的英文版,顺便翻译了一部分,算是个笔记吧,大家一起进步