jsp的jstl的foreach标签

jsp支持丰富的jstl标签语言(需要jar包支持),其中list循环(迭代)用的是<c:forEach></c:forEach>标签。

这个标签的作用就是迭代输出标签内部的内容。它既可以进行固定次数的迭代输入,也可以依据集合中对象的个数来决定迭代的次数。

这个标签需要与el表达式联合使用,带有以下可选属性:

一般情况下使用var和items两个属性即可。

<c:forEach items="${list}" var="item" varStatus="i">
    <tr>
        <td>${item.title}</td>
        <td>${item.address}</td>
        <td>${item.beginTime}</td>
        <td>${item.endTime}</td>
        <td>${item.grade}</td>
    </tr>
</c:forEach>

items属性支持Java平台所提供的所有标准集合类型,也支持数组。它所支持的集合类型及迭代的元素如下:

java.util.Collection:调用iterator()来获得的元素。 

java.util.Map:通过java.util.Map.Entry所获得的实例。 

java.util.Iterator:迭代器元素。 

java.util.Enumeration:枚举元素。 

Object实例数组:数组元素。 

基本类型值数组:经过包装的数组元素。 

用逗号定界的String:分割后的子字符串。 

javax.servlet.jsp.jstl.sql.Result:SQL查询所获得的行。

另外varStatus可以看做是一个对象,经常使用的是其中的index属性,在上面的例子中,可以使用i.index获取循环的当前次数。

"从前我们总是在意别人,到后来只想取悦自己。"

原文地址:https://www.cnblogs.com/yanggb/p/10785287.html