`

<logic:iterate>同for循环的用法比较

阅读更多
同样生成一个Table

<table id="checkTable" align="center" cellpadding="5" cellspacing="0" border="0" width="100%">
<tbody>
<logic:iterate id="item" name="list" type="com.worthtech.app.bean.User" indexId="index">
<%
  //int index=((java.lang.Integer)pageContext.findAttribute("index")).intValue();//自增的索引,相当于for里面的i,logic:iterate里用起来比较麻烦,红色部分必须一致
  if((index%2)==0){//斑马线
  %>
    <tr class="SelcetOff">
  <%}else{%>
    <tr class="SelcetOn">
  <%}%>
     <td><div align="center"><bean:write name="item" property="userName"/></div></td>
     <td><div align="center"><bean:write name="item" property="address"/></div></td>
         
        </tr>
</logic:iterate>
</tbody>
</table>

<table id="checkTable" align="center" cellpadding="5" cellspacing="0" border="0" width="100%">
<tbody>
 <%
 if (request.getAttribute("list") != null) {
	java.util.List l = (java.util.List) request.getAttribute("list");
	  for (int i = 0; i < l.size(); i++) {
               com.worthtech.app.bean.User user = (com.worthtech.app.bean.User) l.get(i);
	       if(i%2==0){//斑马线
                 out.print("<tr class='SelcetOff'>");
               }else{
                 out.print("<tr class='SelcetOn'>");
               }								
         	out.print("<td><div align='center'>"+ user.getUserName() + "</div></td>");
		out.print("<td><div align='center'>"+ user.getAddress() + "</div></td>");
		out.print("</tr>");
	}
}
%>
</tbody>
</table>



用for循环比较自由度大,方便。比如要对user.getAddress()进行操作,可以out.print("<td><div align='center'>"+ Util.parse(user.getAddress()) + "</div></td>");
如果使用<logic:iterate>里的<bean:write name="item" property="address"/>就必须这样:
<bean:define id="var" name="item" property="address" type="java.lang.String"/>
<% java.lang.String address=var;%>
<td><div align="center"><%=Util.parse(address) %></div></td>
这样显得很麻烦。
总结:使用<logic:iterate>灵活度不高
分享到:
评论

相关推荐

    logic:iterate 是什么,怎么用

    - 使用 `&lt;logic:iterate&gt;` 遍历名为 `list` 的集合,集合元素类型为 `example.User`。 - 通过 `&lt;bean:write&gt;` 输出每个用户的名字和密码。 ##### 3. 创建 User 类 为了配合上述示例,还需要创建一个 `User` 类: ...

    logic标签的问题及解答

    除了上述基本用法,`&lt;logic:iterate&gt;`还可以与其他逻辑标签结合使用,例如`&lt;logic:notEmpty&gt;`、`&lt;logic:equal&gt;`等,实现更复杂的条件判断和流程控制。 需要注意的是,随着技术的发展,Struts 1的`logic`标签库在...

    Struts中logic标签的使用

    本文将详细介绍Struts中Logic标签的使用方法,特别是逻辑判断和迭代操作相关的标签。 #### 二、Logic标签概述 Logic标签主要用于处理页面上的逻辑控制,例如条件判断和循环等。这些标签简化了JSP页面的编写工作,并...

    logic标签汇总

    在孙卫琴老师的Struts书中,这些`logic`标签的用法和实例被详细讲解,通过实际操作和案例分析,可以帮助读者更好地理解和掌握这些标签的使用方法。对于初学者来说,这是一个很好的学习资源,能够快速提升在Struts...

    struts标签库总结

    - **循环**:`&lt;logic:iterate&gt;`用于遍历集合,如ArrayList或Map,每次迭代将元素赋值给一个变量,可以在循环体内访问。 - **流程控制**:`&lt;logic:forward&gt;`、`&lt;logic:redirect&gt;`用于页面跳转,前者是在服务器端...

    struts 标签库

    - `&lt;logic:iterate&gt;`:迭代集合中的元素。 使用Struts标签库可以显著提高开发效率,因为它们提供了内置的类型转换、错误处理和国际化支持。开发者不再需要在JSP页面中编写大量的Java脚本,而是可以专注于页面布局和...

    struts2 标签

    `&lt;logic:if&gt;`和`&lt;logic:iterate&gt;`则提供了强大的条件和循环控制。 学习Struts2标签,开发者需要理解每个标签的用途、属性和用法,以便在实际开发中灵活运用。同时,掌握好这些标签的使用,能显著提高开发效率,减少...

    重要知识Struts标签大全.pdf

    例如,`&lt;logic:present&gt;`检查某个对象是否存在,`&lt;logic:iterate&gt;`遍历集合并在每个元素上执行操作,`&lt;logic:equal&gt;`比较两个值是否相等。这些标签使得在JSP页面上进行条件判断和循环变得更加直观。 **Nested Tags*...

    Struts标签手册

    `&lt;logic:equal&gt;`用于比较两个表达式,如果相等则执行相应的代码;`&lt;logic:notEqual&gt;`则是其相反情况。`&lt;logic:iterate&gt;`可以用来遍历集合对象,如ArrayList或Map。这些标签使得在JSP页面中进行逻辑控制变得更加直观...

    常用struts1遍历方法

    这样,每当`&lt;logic:iterate&gt;`执行一次循环时,就会将当前的元素值赋给`element`,然后通过`&lt;bean:write&gt;`标签将这些值输出到页面上。最终输出结果为: ``` Dog Cat Bird Chick ``` #### 二、使用`&lt;logic:iterate&gt;`...

    truts专用标签库详解

    1. `logic`标签库:这些标签主要用于控制流程,如条件判断(`&lt;logic:equal&gt;`、`&lt;logic:notEqual&gt;`)、循环(`&lt;logic:iterate&gt;`)和导航(`&lt;logic:forward&gt;`)等。 2. `bean`标签库:这个库用于处理JavaBean对象,...

    struts tag

    下面将详细讨论Struts Logic标签库中的各个标签及其使用方法。 1. **比较运算的Logic标签** - `&lt;logic:equal&gt;`:这个标签用来检查指定的变量是否等于给定的值。如果相等,则输出标签体内的内容。例如,可以检查...

    struts1标签

    - `&lt;logic:greaterThan&gt;`、`&lt;logic:greaterEqual&gt;`、`&lt;logic:lessThan&gt;`和`&lt;logic:lessEqual&gt;`:进行数值比较。 3. **Bean标签(bean)** - `&lt;bean:define&gt;`:定义一个局部变量。 - `&lt;bean:write&gt;`:输出Bean的...

    Struts循环标签

    myList = new ArrayList&lt;&gt;(); // 添加元素... return SUCCESS; } } ``` 总的来说,Struts循环标签是实现动态页面展示的关键组件,它简化了与集合数据交互的过程,使得开发者能够更专注于业务逻辑而不是页面渲染...

    struts标签学习与应用(手册)

    - `&lt;logic:iterate&gt;`:遍历集合对象,如ArrayList或Map,用于循环输出。 - `&lt;logic:present&gt;`和`&lt;logic:notPresent&gt;`:检查请求、会话或应用范围内的对象是否存在。 **4. Bean标签** 虽然Bean标签不是Struts核心的...

    JSP中table的td标签迭代循环

    本篇内容将深入探讨如何在JSP中利用`&lt;logic:iterate&gt;`标签对数据进行迭代,并通过控制循环的行数来实现自动换行的功能。 #### 一、基本概念 1. **JSP**:JavaServer Pages是一种基于Java技术的标准服务器端应用...

    Struts开发技术

    Map&lt;String, String&gt; map = new HashMap&lt;&gt;(); map.put("name1", value1); dto.setMap(map); List&lt;DTO&gt; lst = new ArrayList&lt;&gt;(); lst.add(dto); session.setAttribute("listTop", lst); ``` **JSP:** ```jsp &lt;logic...

    struts1标签及实例

    - `&lt;logic:iterate&gt;`:遍历集合,如List或数组,用于在循环中渲染元素。 - `&lt;logic:present&gt;`、`&lt;logic:notPresent&gt;`:检查指定的请求、session或application范围内的对象是否存在。 - `&lt;logic:forward&gt;`:将请求...

    struts1.2基本标签使用视频

    `&lt;logic:iterate&gt;`标签用于遍历集合,如数组或List,常用于动态渲染表格。`&lt;logic:present&gt;`和`&lt;logic:notPresent&gt;`标签用于检查指定的请求参数、session或application范围内的对象是否存在。 除了`bean`和`logic`...

    Struts2核心标签注解

    - `&lt;logic:iterate&gt;`:循环迭代集合或数组。 - `&lt;logic:equal&gt;`:进行逻辑判断,类似于if语句。 - `&lt;logic:empty&gt;`:判断变量或集合是否为空,如果为空则执行其内部的代码块。 ### 4. Nested Tag Nested Tag是在前...

Global site tag (gtag.js) - Google Analytics