代码如下,topic为一个实体bean,有author属性,为说明起见,author 赋0,1,2值,但是发现 <c:forEach>中没有遍历
<%
List<Topic> list = new ArrayList<Topic>();
Topic topic = new Topic();
for(int i= 0 ;i <3;i++)
{
topic.setAuthor(i+"");
list.add(topic);
System.out.println("author:" + topic.getAuthor());
}
request.setAttribute("topicTest",list);
%>
<c:forEach items="${requestScope.topicTest}" var="topic">
${topic.author}<br>
</c:forEach>
注意绿色的代码,他 的位置应该放在for循环中,因为放在外面时,在FOR循环中每次仅仅是修改topic.autho的值,再将修改后的topic对象的一个副本存入到集合中而已,所以最终的结果是所有的topic属性值均相同,造成没有循环的假象。
分享到:
相关推荐
1. `<c:forEach>`:用于遍历集合、数组或迭代对象,实现循环操作。 2. `<c:forTokens>`:对字符串进行分割,然后对每个分割出来的元素进行循环处理。 **使用JSTL的好处**: - 提高代码的可读性:通过使用XML样式的...
在JavaServer Pages (JSP) 开发中,`c:forEach`标签是Java Expression Language (EL) 和 JavaServer Pages Standard Tag Library (JSTL) 的一部分,它提供了一个方便的方式来迭代数组、集合、Map或其他可迭代的数据...
`<c:forEach>` 标签是 JSP 开发中非常强大的工具,能够高效地处理各种数据类型的遍历操作。通过合理利用 `varStatus` 属性,我们可以获取到更多有关循环过程中的状态信息,从而实现更复杂的逻辑处理。掌握 `<c:...
在这个主题"**c标签-if-foreach-jar**"中,主要涉及到的是JSTL的两个核心标签`<c:if>`和`<c:forEach>`,它们是JSTL提供的条件判断和循环控制标签,通常与`jstl.jar`包一起使用。 首先,让我们详细了解**<c:if>**...
在JSP页面中,使用`c:forEach`标签遍历`map`: ```jsp <c:forEach items="${map}" var="entry"> <option value="${entry.key}">${entry.value}</option> </c:forEach> ``` 这里,`${map}`代表从前端传过来的`Map`...
除了`<c:forEach>`,JSTL还提供了其他遍历标签,如`<c:forTokens>`用于遍历字符串中的分隔符。同时,JSTL还可以和其他标签库(如fmt、sql、function等)配合使用,实现更复杂的逻辑。 总之,JSTL遍历是Java Web开发...
- **`<c:forEach>`**: 用于遍历集合。例如,遍历数组或列表: ```jsp <c:forEach items="${yourList}" var="item"> ${item} </c:forEach> ``` - **`<c:remove>`**: 用于删除一个变量。例如: ```jsp <c:...
通过源码分析,我们可以深入了解`<c:forEach>`标签的工作原理,以及如何在实际项目中有效地利用它来遍历各种数据结构。在压缩包中的源码示例,可能会包含多种遍历场景,帮助我们更好地理解和应用这些概念。在学习...
在JSP页面中,我们可以用`<c:forEach>`遍历数据集,然后用`<c:if>`检查当前列是否与前一列相同。如果相同,那么就设置一个合并标志,同时在HTML中添加相应的`colspan`属性,告诉浏览器需要合并多少个列。 ```jsp ...
**JSP C标签引用**是JavaServer Pages(JSP)技术中的一种扩展,它允许开发者使用自定义标签库(Custom Tag Libraries),特别是JSP Standard Tag Library(JSTL)。JSTL是Java社区为了简化JSP开发,提高代码可读性...
- **遍历数组或列表**:`<c:forEach items="${list1}" var="arry">` - **遍历嵌套数组**:`<c:forEach items="${arry}" var="e">` - **遍历Map**:`<c:forEach items="${map1}" var="entry">`。这里`entry`代表键值...
在这个例子中,`${list}`是存储在请求作用域的List对象,`<c:forEach>`标签将遍历这个List并打印出每个元素。 总之,JSTL和C标签库为JSP开发提供了强大的工具,使得页面更简洁、可读性更强,同时也提升了开发效率和...
- **迭代标签**:`<c:forEach>`、`<c:forTokens>`,实现循环遍历。 - **URL操作标签**:`<c:import>`、`<c:param>`、`<c:url>`、`<c:redirect>`,用于处理URL相关的操作。 **4. 使用JSTL的步骤** 1. 将JSTL的`....
- **<c:forEach>**:用于循环遍历集合或数组。 - **<c:forTokens>**:用于按指定分隔符遍历字符串中的元素。 - **<c:import>**:用于在JSP页面中包含其他资源。 - **<c:url>**:用于生成URL。 - **<c:redirect>**:...
首先,`C标签`是指Tomcat的JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了类似于Java控制结构的标签,如`<c:if>`, `<c:forEach>`, `<c:choose>`等。这些标签使得开发者可以使用更加简洁的XML语法...
- **迭代标签**:如`<c:forEach>`和`<c:forTokens>`,用于循环遍历集合或字符串。例如: ```jsp <c:forEach var="number" items="${numbers}"> ${number} </c:forEach> ``` 2. **国际化和格式化标签库**(I18...
- **`<c:forEach>`**:遍历集合或数组中的元素。 - 示例:`<c:forEach items="${list}" var="item">...</c:forEach>` - **`<c:set>`**:设置变量的值。 - 示例:`<c:set var="varName" value="value"/>` #### 2. ...
- `<c:forEach>`标签是JSTL中用于遍历集合、数组或Map的标签,它可以遍历数组、集合、枚举或数组范围等。例如: ```jsp <c:forEach items="${list}" var="item"> ${item} </c:forEach> ``` - `<c:out>`标签...
JSTL还提供了条件判断标签,如`<c:if>`和`<c:choose>`,以及循环标签`<c:forEach>`等,这些都极大地简化了JSP页面中的逻辑处理。例如,使用`<c:forEach>`遍历一个集合: ```jsp <c:forEach items="${list}" var=...
在BBS论坛的版块页面重构中,我们可以使用`<c:forEach>`标签遍历列表数据。假设我们有一个Board对象列表,其中每个Board对象包含主题数(topicNum)和最新帖子信息(newTopic)。首先在后台的JavaBean中添加这些属性...