`

Struts2 <s:iterator>标签使用案例

    博客分类:
  • java
阅读更多

s:iterator 标签有3个属性:
value:被迭代的集合
id :指定集合里面的元素的id
status 迭代元素的索引
数组或list

List<News> news;
News类中(id,name)
1,wang
2,li
<s:iterator value="news" id='n'>
  <li><s:property value='n.id'/></li>
</s:iterator>
打印结果为:
1
2

2:索引的用法
如果指定了status,每次的迭代数据都有IteratorStatus的实例,它有以下几个方法
int getCount()返回当前迭代了几个元素
int getIndex()返回当前元素索引
boolean isEven()当然的索引是否偶数
boolean isFirst()当前是否第一个元素
boolean isLast()是否最后一个
boolean isOdd()当前元素索引是否奇数
<s:iterator value="{'a','b','c'}" id='char' status='st'>
<s:if test="#st.Even">
现在的索引是奇数为:<s:property value='#st.index'/>
</s:if>
当前元素值:<s:property value='char'/>
</s:iterator>
3:遍历map
value可以直接定义为:
value="#{"1":"a","2":"b"}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下:
<s:iterator value="map" id="id" status="st">
key : <s:property value='key'/>
value:<s:property vlaue='value'/>
</s:iterator>
当然key 和value 都可以使java 的 Object
3:遍历数据栈.简单的List类,
List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}
<s:iterator value="label" id="id">
<s:property value="#id.attrName" />
</s:iterator>
当然value 还可以写成 value="%{label}" label可以有.操作
label的属性List 可以写成value="%{label.list}" 相当于:getLabel().getList();
4:遍历2个list;
List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}
这2个list的元素是一一对应的,一个attrN对应一个attrV
<s:iterator value="%{attrN }" id="id" status="status">
index is : <s:property value='status.index'/>
attrName is : <s:property value='id'/> or <s:property value='%{id}'/>
attrName is : <s:property value='%{attrV[#status.index]}'/>
</s:iterator>

<s:bean name="org.apache.struts2.util.Counter" id="counter">
<s:param name="first" value="5" />
<s:param name="last" value="10" />
<s:iterator>
counter:<s:property/>
</s:iterator>
</s:bean>

这个标签主要的的作用就是迭代出集合。。
value属性表示需要跌代显示出来的值。
status属性,又来保存迭代时的一些状态值。
分享到:
评论

相关推荐

    struts2标签库例子

    例如:&lt;s:append id="myAppendIterator"&gt; &lt;s:param value="%{myList1}" /&gt; &lt;s:param value="%{myList2}" /&gt; &lt;s:param value="%{myList3}" /&gt;&lt;/s:append&gt;&lt;s:iterator value="%{#myAppendIterator}"&gt; &lt;s:property /&gt;&lt;/...

    Struts2之struts2标签库了解和使用案例struts025

    在上述代码中,`&lt;s:iterator&gt;`遍历Action中返回的`users`集合,`&lt;s:property&gt;`显示属性值,`&lt;s:url&gt;`创建链接,`&lt;s:form&gt;`定义表单,`&lt;s:textfield&gt;`为表单字段,`&lt;s:submit&gt;`用于提交表单。 通过Struts2的标签库,...

    struts2标签库

    - `&lt;s:iterator&gt;`:迭代标签,用于遍历集合对象,如List、Set等。 - `&lt;s:property&gt;`:显示对象的属性值,常用于显示后台数据。 2. **展示标签库**: - `&lt;s:textarea&gt;`:创建多行文本输入框。 - `&lt;s:checkbox&gt;`...

    Struts2案例翻译篇-Using Struts2 Tag

    - `&lt;s:iterator&gt;`:迭代集合,如List或Map,用于显示列表数据。 5. **Struts2 Tags的特性** - 数据绑定:自动将标签的值绑定到Action的属性,减少了手动设置值的繁琐步骤。 - 验证支持:标签可以直接与Struts2的...

    struts2 OGNL 表达式及各种标签的使用

    - `&lt;s:iterator&gt;`:遍历集合,如`&lt;s:iterator value="users"&gt;...&lt;/s:iterator&gt;`。 - `&lt;s:select&gt;`、`&lt;s:radio&gt;`和`&lt;s:checkbox&gt;`:用于创建表单元素,绑定数据到Action的属性。 5. **安全问题** - OGNL注入:...

    struts标签库案例

    例如,使用`s:textfield`和`s:submit`创建用户注册表单,`&lt;s:if&gt;`进行表单验证,`&lt;s:iterator&gt;`遍历数据库中的用户并显示,`&lt;display:table&gt;`处理用户列表的分页和排序。 通过阅读`struts标签讲解.ppt`,你可以更...

    struts常用标签示例

    11. **`&lt;s:iterator&gt;`** 标签: 用于迭代集合数据,常用于遍历数组、List、Map等数据结构。 12. **`&lt;s:include&gt;`** 标签: 类似于JSP的`&lt;jsp:include&gt;`标签,用于包含其他JSP或Struts动作。 在Struts2中,这些...

    Struts2 常用标签

    2. `&lt;s:choose&gt;`, `&lt;s:when&gt;`, `&lt;s:otherwise&gt;`:这些标签可以实现多分支判断,类似于Java的switch-case语句。 二、数据绑定标签 1. `&lt;s:textfield&gt;`:用于创建输入框,自动绑定Action类中的属性。例如: ```jsp ...

    struts2购物车

    同样采用`&lt;s:iterator&gt;`标签遍历购物车中的商品列表,并提供一个“删除”按钮,以便用户能够移除不再需要的商品。 ```jsp &lt;body&gt; &lt;table&gt; &lt;tr&gt; &lt;td&gt;编号&lt;/td&gt; &lt;td&gt;名称&lt;/td&gt; &lt;td&gt;价格&lt;/td&gt; &lt;td&gt;操作&lt;/td&gt; ...

    Struts2 案例

    例如,`&lt;s:form&gt;`用于创建表单,`&lt;s:textfield&gt;`用于输入框,`&lt;s:submit&gt;`用于提交按钮,`&lt;s:iterator&gt;`用于遍历集合并显示数据,而`&lt;s:if&gt;`和`&lt;s:else&gt;`则可以进行条件判断。通过这些标签,开发者可以快速构建出...

    struts标签中文

    - **国际化**:如果需要支持多种语言,可以利用Struts2的国际化特性,创建资源文件并使用`&lt;s:text&gt;`标签显示多语言文本。 总的来说,Struts标签库为Java Web开发带来了便利,尤其是在处理中文内容时。通过理解并...

    JSP 中限定字符长度

    - **Struts2迭代标签**:`&lt;s:iterator&gt;`标签用于遍历集合或数组,并且可以轻松地与JSTL结合使用。 #### 5. 总结 本文通过一个实际的案例,介绍了如何在JSP中实现对字符串长度的限制。这种方法不仅可以提高页面的...

    ognl表达式案例

    比如,如果Action类有一个`List&lt;String&gt; messages`属性,我们可以在JSP中使用`&lt;s:iterator value="messages"&gt;`标签遍历这个列表。 描述中提到的"ognl标签"是指Struts2提供的与OGNL相关的标签库,它们使得在JSP页面...

    struts2实现在jsp页面对员工的增删改查操作

    使用Struts2的标签库可以方便地绑定数据和处理表单提交: ```jsp &lt;!-- addEmployee.jsp --&gt; &lt;s:form action="addEmployee"&gt; &lt;s:textfield name="employee.name" label="姓名"/&gt; &lt;s:textfield name="employee....

    struts2标签使用例子

    - 引入Struts2标签库:在JSP页面头部添加`&lt;%@ taglib prefix="s" uri="/struts-tags"%&gt;`。 - 在Action中定义相关属性和方法。 - 在JSP页面中使用标签,如`s:textfield name="username"`绑定Action的username属性...

    struts2实现多文件上传

    - 可以使用Struts2的迭代标签(如`s:iterator`)来遍历存储文件路径的集合,并动态生成HTML `&lt;img&gt;` 标签显示图片。 - 示例代码: ```jsp &lt;div style="width:510px;border:1px solid gray"&gt; &lt;div style="width:...

    ssh2实现查询分页

    在JSP中,我们可以使用Struts2的标签库来展示数据,比如`s:iterator`遍历查询结果,`s:property`输出每个字段的值。同时,也需要显示分页导航,这通常包括“上一页”、“下一页”以及页码选择器。例如: ```jsp &lt;%@...

    struts留言本

    在"struts留言本"的视图部分,可能会使用`&lt;s:form&gt;`标签来创建表单,`&lt;s:textfield&gt;`和`&lt;s:textarea&gt;`来显示和收集用户输入,以及`&lt;s:iterator&gt;`遍历并显示留言列表。 5. **数据库交互**: 为了持久化留言数据,...

    利用struts标签,dispatchAction,实现增删改查

    例如,`&lt;s:textfield&gt;`用于创建输入字段,`&lt;s:submit&gt;`用于提交表单,而`&lt;s:iterator&gt;`则用于遍历集合并显示其内容。这些标签简化了JSP代码,提高了可维护性。 2. **DispatchAction的使用**: - **配置Action**:...

Global site tag (gtag.js) - Google Analytics