<%@ page language="java" import="java.util.*, cn.hncu.domain.*" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>

<body>

<p> c:forEach标签 </p>
一、普通for循环的功能
<c:forEach begin="1" end="10" var="i" step="2">
${i}<br/>
</c:forEach>

二、增强for循环的功能<br/>
1.遍历数组<br/>
<%
String strs[] = {"aa","bb","cc"};
pageContext.setAttribute("strs", strs);
%>
<c:forEach items="${strs}" var="str">
${str},
</c:forEach>

<br/>
2.遍历List<br/>
<%
List list = new ArrayList();
list.add("aaa");
list.add("bbb");
list.add("ccc");
pageContext.setAttribute("list", list);
%>
<c:forEach items="${list}" var="a">
${a},
</c:forEach>


<br/>
3.遍历Map<br/>
<%
Map map = new HashMap();
map.put("name", "李四");
map.put("age",24);
map.put("addr","安置小区");
pageContext.setAttribute("map", map);
%>
<c:forEach items="${map}" var="aa">
${aa} ==>&nbsp;&nbsp; ${aa.key} , ${aa.value} <br/>
</c:forEach>

<br/>
3.遍历元素为值对象的集合,如List&lt;User&gt; <br/>
<%
List<User> list2 = new ArrayList<User>();
list2.add( new User("Mike","1234",20));
list2.add( new User("Mike2","1234",22));
list2.add( new User("Mike3","4322",21));
list2.add( new User("Rose","111",10));
pageContext.setAttribute("list2", list2);
%>
<c:forEach items="${list2}" var="user" varStatus="idx">
<!--index为下标的序号(索引), count为记数 -->
${idx.index},${idx.count}:&nbsp;
<c:out value="${user.name}"></c:out> ,
<c:out value="${user.pwd}"></c:out> ,
<c:out value="${user.age}"></c:out> <br/>
</c:forEach>

<hr/>
<p> c:choose,when,otherwise标签 </p>
<c:set var="score" value="65" scope="session"></c:set>
<c:choose>
<c:when test="${score>=90}">
优秀
</c:when>
<c:when test="${score>=80}">
良好
</c:when>
<c:when test="${score>=70}">
中等
</c:when>
<c:otherwise>
毕不了业
</c:otherwise>
</c:choose>

<p> forTokens标签 </p>
<c:forTokens items="a,b,c,d,23,tt" delims="," var="x">
${x} <br/><!-- 这里是把字符串按逗号分隔开来,相当于String中的split方法 -->
</c:forTokens>

<p> url相关的标签: url,import,redirect </p>
<!-- 重写url技术,路径中的斜杠就是项目根目录 -->
<a href="<c:url value='/ShowServlet' />">显示所有用户信息</a> <br/>
<!-- 动态包含 -->
<c:import url="/jsps/foot.jsp"></c:import>

<%--小心,页面中写了c:redirect,就会立即重定向到其它页面。不会再停留在当前页面
<c:redirect url="/jsps/show.jsp"></c:redirect>
response.sendRedirect("/jsps/show.jsp");
--%>

<p> c:remove标签:移除属性变量, 和set是相反 </p>
<c:remove var="score"/>
score: ${score}

</body>
</html>

JSTL-core核心代码标签库中的forEach,remove, forTokens,choose,when,otherwise,redirect 标签的更多相关文章

  1. 在EL表达式或者Struts标签库中格式化日期对象,即将Date转换为yyyy-MM-dd格式

    一.EL表达式 首先,在jsp页面引入<fmt> tags,<%@ taglib prefix="fmt" uri="http://java.sun.c ...

  2. JSTL-core核心代码标签库中的if,set,out等的功能

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  3. JSTL标签库中fmt标签,日期,数字的格式化

    首先介绍日期的格式化:(不要嫌多哦) JSTL格式化日期(本地化) 类似于数字和货币格式化,本地化环境还会影响生成日期和时间的方式. <%@ page pageEncoding="UT ...

  4. jsp页面使用EL表达式 使用Jstl标签库中的标签,需要引入jstl.jar和standard.jar

    spring boot 中使用jstl 首先在pom中加入 <dependency> <groupId>jstl</groupId> <artifactId& ...

  5. JSTL标签库中<c:choose></c:choose>不能放JSP页面<!-- -->注释

    笔者最近在使用JSTL标签库的<c:choose>标签时候,发现在该标签体中加了JSP的<!-- -->注释时,总是会显示报错信息.错误的信息如下: <span styl ...

  6. 在写易买网时产生的错误 JSTL标签库中<c:choose></c:choose>不能放JSP页面<!-- -->注释

    最近在使用JSTL标签库的<c:choose>标签时候,发现在该标签体中加了JSP的<!-- -->注释时,总是会显示报错信息.错误的信息如下: org.apache.jasp ...

  7. JSTL标准标签库 (使用foreach打印集合)

    <%@page import="java.util.*"%><%@ page language= "java" contentType=&qu ...

  8. Linux可信计算机制模块详细分析之核心文件分析(8)tpm.c核心代码注释(中)

    /*设置TPM命令格式*/ ssize_t tpm_getcap(struct device *dev, __be32 subcap_id, cap_t *cap, const char *desc) ...

  9. JavaWeb(五)之JSTL标签库

    前言 前面介绍了EL表达式,其实EL表达式基本上是和JSTL核心标签库搭配一起使用才能发挥效果的.接下来让我们一起来认识一下吧! 在之前我们学过在JSP页面上为了不使用脚本,所以我们有了JSP内置的行 ...

随机推荐

  1. Http Get Post put delete

    HTTP POST GET 本质区别详解一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Htt ...

  2. ruby 方法重载

    class MyClass def sayHello return "hello from MyClass" end def sayGoodbye return "Goo ...

  3. hadoop中的分布式缓存——DistributedCache

    分布式缓存一个最重要的应用就是在进行join操作的时候,如果一个表很大,另一个表很小很小,我们就可以将这个小表进行广播处理,即每个计算节点 上都存一份,然后进行map端的连接操作,经过我的实验验证,这 ...

  4. bzoj1821

    题目要求最近的两个部落间距尽可能最远 不难想到一种贪心的方法,对每两个点之间距离从小到大排序, 把每个点看成一个部落 然后不断将距离近的两个部落合并成一个部落,直到剩下了k个部落,那么下一条不同部落之 ...

  5. C# 多线程(lock,Monitor,Mutex,同步事件和等待句柄)

    本篇从 Monitor,Mutex,ManualResetEvent,AutoResetEvent,WaitHandler 的类关系图开始,希望通过本篇的介绍能对常见的线程同步方法有一个整体的认识,而 ...

  6. nginx的优缺点

    1.nginx相对于apache优点: 轻量级同样起web 服务比apache占用更少内存及资源 抗并发nginx 处理请求异步非阻塞而apache 则阻塞型高并发下nginx 能保持低资源低消耗高性 ...

  7. 洛谷P1220 关路灯

    洛谷1220 关路灯 题目描述 某一村庄在一条路线上安装了n盏路灯,每盏灯的功率有大有小(即同一段时间内消耗的电量有多有少).老张就住在这条路中间某一路灯旁,他有一项工作就是每天早上天亮时一盏一盏地关 ...

  8. 计算机网络协议包头赏析-UDP

    之前我们已经针对以太网.IP.TCP协议,进行了包头赏析.本次,我们继续UDP协议包头赏析. 提到TCP,想必大家会有所了解,它早已是家喻户晓的一个网络协议了,而UDP远没有他的大哥那么的有名,所以, ...

  9. IntelliJ IDEA的下载、安装和WordCount的初步使用(本地模式和集群模式)

    包括: IntelliJ IDEA的下载  IntelliJ IDEA的安装 IntelliJ IDEA中的scala插件安装 用SBT方式来创建工程 或 选择Scala方式来创建工程 本地模式或集群 ...

  10. 【Mysql学习笔记】浅析mysql的binlog

    最近读一份关于“数据库事务故障恢复"的技术资料,发现对mysql的binlog的认识不够清楚,查阅mysql reference manual有所收获,作为笔记,记录于此. 1. What' ...