上面章节主要讲解<c:forEach>标签,下面讲解其它标签

1、<c:forTokens>标签

forTokens标签与forEach标签类似,独有begin、end、step、items等属性,可以循环,不同之处是forTokens标签里面是字符串

<c:forTokens items="Jane,Toni,Andy,hedix"  delims="," var="item" varStatus="status" begin="1" end="4" step="2">

<tr>

<td>${status.index}</td>

<td>${item}</td>

</tr>

</c:forTokens>

输出结果可以自己亲手试试看,下面解析一下各个属性的作用,delim是类似分割点的意思,varStatus遍历对象的信息,其中${status.index}的输出当前对象是第几个

2、<c:set>标签

一个页面有时候需要统计一些数字,比如当前用户登录次数,当前页面总访问人数等

set标签可以帮我完成这些功能,它总共有五个属性(var、value、scope、target和poperty)

1)

<c:set var="totalCount" value="${totalCount+1}" scope="application"></c:set>

<c:set var="count" value="${count+1}" scope="session"></c:set>

<tr>

<td>网站总访问数:${totalCount}</td>

<td>其中您的访问次数:${count}</td>

</tr>

下面解析一下属性意义:var就是set的对象,value就是set进去的值,scope声明该对象的作用范围

2)

<%

request.setAttribute("person",new com.bean.Person());

request.setAttribute("map", new java.util.HashMap());

%>

<c:set target="${person} property="name" value="${param.name}"></c:set>

<c:set var="${map} property="name" value="${param.name}"></c:set>

<tr>

<td>${person.name}</td>

<td>${map.name}</td>

</tr>

信息的朋友会问,为什么下面的买看见var属性呢?问的很好

实际上var和target属性是相互排斥和互助的,也就是说有var就没target,各有各的作用,下面说说它们的不同之处

var不能接受EL表达式的,但target必须接受EL表达式

target只能用来操作javaBean或者Map

target一般和property组合使用,其中property对应的是target对象的属性,如果target是Map,则porperty对应的是key值

请注意(target是不应许对象为null的)

var和target不能同时使用在一个标签里面

3、<c:remove>标签

remove标签的作用和set标签的作用刚好相反,remove有两个属性,var和scope,同set一样var属性只接受字符串不接受EL表达式

<%

request.setAttribute("test", new java.util.HashMap());

%>

<c:remove var="test ></c:remove>

<tr>

<td>${test ==null ?'test对象已经被删除':'test对象没有被删除'}</td>

</tr>

其中当test是的空的时候,不会报错

4、<c:catch>标签

大家一看到这个标签应该能才出来是捕捉异常的,确实是这样的,catch只有var一个属性

<c:catch var="test >

<c:set target="${person}" property="name" value="some value"></c:set>

</c:catch>

<tr>

<td><c:if test="${test!=null}">程序报错,错误内容:${test.class.name}</c:if></td>

</tr>

JSTL解析——004——core标签库03的更多相关文章

  1. JSTL解析——002——core标签库01

    javaEE5之前的版本需要引用JSTL相关的jar包.tld文件等,JAEE5之后就不用这么麻烦了, 如果你的还是不能使用就去官网下载(jstl.jar和standard.jar)这两个jar包,将 ...

  2. JSTL解析——005——core标签库04

    直接入主题,标签讲解 1.<c:import>标签 JSP里面有<% file include="XX"%> 与<jsp:include>,JS ...

  3. JSTL解析——003——core标签库02

    上一节主要讲解了<c:if/><c:choose/><c:when/><c:otherwise><c:out/>标签的使用,下面继续讲解其它 ...

  4. JSTL解析——007——fmt标签库02

    各位亲们,近期事情比较多,没更新,come on! 1.<fmt:bundle>/<fmt:message>/<fmt:param>资源国际化标签 java中使用R ...

  5. JSTL标签急速秒杀jsp页面中的java代码(一)---Core标签库

    JSTL标签简介 ===================================================================== JSTL的全称是JavaServer Pa ...

  6. JSP第五篇【JSTL的介绍、core标签库、fn方法库、fmt标签库】

    什么是JSTL JSTL全称为 JSP Standard Tag Library 即JSP标准标签库. JSTL作为最基本的标签库,提供了一系列的JSP标签,实现了基本的功能:集合的遍历.数据的输出. ...

  7. (1)JSTL的13个core标签库

     标准标签库JSTL的全名为:Java Server Pages Standard Tag Library. (jsp  standard tag library) JSTL主要提供了5大类标签库: ...

  8. JSTL(JSP标准标签库)

    JSP标准标签库(JavaServer Pages Tag Library, JSTL)是一个定制JSP标签库的集合,封装了JSP应用的通用核心功能.用来解决像遍历Map或集合.条件测试.XML处理, ...

  9. JSP开发中对jstl的引用方式(标签库引用)

    创建标签库引用文件taglibs.inc 一 采用本地标签库的taglibs.inc文件 <%--struts库标签 --%> <%@ taglib uri="/WEB-I ...

随机推荐

  1. JS多维数组转一维

    题目: var array = [1, [2, [3, 4], [5, 6]], 7, 8]; 写一个方法 flatArray(),得到数组 [1, 2, 3, 4, 5, 6, 7, 8] 解答: ...

  2. 一口一口吃掉Hibernate(八)——Hibernate中inverse的用法

    一.Inverse是hibernate双向关系中的基本概念.inverse的真正作用就是指定由哪一方来维护之间的关联关系.当一方中指定了“inverse=false”(默认),那么那一方就有责任负责之 ...

  3. aop编程 环绕round

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  4. img src某个php文件输出图片(回复更改图片readfile读取图片等)

    在论坛我们经常看到一回复图片就更改等,这功能是怎么实现的呢,其实更验证码道理相同. 新建文件 randimage.php 加入以下代码: <?php $dir='../../images/'; ...

  5. 枚举+搜索 hdu-4431-Mahjong

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4431 题目大意: 给一副牌,求出所有能糊的牌. 解题思路: 枚举每一张牌,看能不能糊. 因为一共只有 ...

  6. load data 方式导入的数据不可以用binlog日志进行恢复,因为binlog里面不产生insert sql语句。

    QQ群里面有人问起这个问题:    用load data 导入数据的时候,在binlog文件中记录的不是insert 语句,这样的话,如果用load data 导入数据,当需要恢复数据库的时候  bi ...

  7. Blog 转移

    Blog 转移至 http://blog.rapcoder.com CSDN :  http://blog.csdn.net/a542551042 欢迎一起交流 学习 ,谢谢!!!

  8. vbox要手动mount才能挂载windows的共享文件夹(好用,不用安装samba了)

    mount -t vboxsf BaiduShare /mnt/bdshare/ 我按照这篇文章成功: http://www.wuji8.com/meta/448016166.html 其它参考: h ...

  9. 使用VS2012主题插件创建自己的主题

    上篇文章讲了如何更换VS2012的主题,具体内容请参考:Vistual Studio 2012更换皮肤.可是上面的步骤仅仅让我们可选择的主题是增多了,我们可不可以自己创建自己的主题呢? 答案是肯定的, ...

  10. sort uniq妙用

    cat a b | sort | uniq > c   # c是a和b的并集 cat a b | sort | uniq -d > c   # c是a和b的交集 cat a b b | s ...