`
eonbell
  • 浏览: 59484 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

logic:itertae标签的使用

阅读更多
相关文章:  
Struts1.2.4学习心得!(七)
面试题目
struts学习笔记(标签二)

推荐圈子: struts2
更多相关推荐 logic:iterate
logic:iterate标记用于在页面中创建一个循环,以此来遍历如数组,Collection,Map这样的对象。该标记的功能强大,在 Struts应用的页面中经常使用到。

对数组进行循环遍历
使用logic:iterate标记可以用于遍历数组。以下是一段示例代码:

<% 
    String [] testArray1 = {"str0","str1","str2","str3","str4","str5","str6"}; 
    pageContext.setAttribute("test1",testArray1); 
%> 
<logic:iterate id="array1" name="test1"> 
    <bean:write name="array1"/> 
</logic:iterate> 


在上面的代码中,首先定义了一个字符串数组,并为其初始化。接着,将该数组存入pageContext对象中,命名为test1。然后使用 logic:iterate标记的name属性指定了该数组,并使用id来引用它,同时使用<bean;write>标记来将其显示出来。运行效果如下所示:

str0
str1
str2
str3
str4
str5
str6

分析一下上面的代码,可知logic:iterate标记的name属性用于指定某一存在的对象,id属性定义一个新的对象来引用name 属性所指定的对象。再使用<bean:write>标记的name属性来引用了id属性所定义的新的对象,将数组的值打印出来。另外,还可以通过length属性来指定输出元素的个数。如下面的代码。

<logic:iterate id="array1" name="test1" length="3" offset="2"> 
    <bean:write name="array1"/> 
</logic:iterate>


其中length属性指定了输出元素的个数,offset属性指定了从第几个元素开始输出,如此处为2则表示从第三个元素开始输出。所以该代码的运行结果应当从str2一直输出到str4。实际运行效果如下:

str2
str3
str4

另外,该标记还有一个indexId属性,它指定一个变量存放当前集合中正被访问的元素的序号,如下例:

<logic:iterate id="array1" name="test1" length="3" offset="2" indexId="number"> 
<bean:write name="number"/>: 
<bean:write name="array1"/> 
</logic:iterate> 


运行效果如下所示:

2: str2
3: str3
4: str4

可以看出,序号已经加在了输出字符串的前面。

对HashMap进行循环遍历
以下是一段使用logic:iterate标记遍历HashMap的代码。
<% 
    HashMap countries = new HashMap(); 
    countries.put("country1","中国"); 
    countries.put("country2","美国"); 
    countries.put("country3","英国"); 
    countries.put("country4","法国"); 
    countries.put("country5","德国"); 
    pageContext.setAttribute("countries",countries); 
%> 
<logic:iterate id="country" name="countries"> 
<bean:write name="country" property="key"/>: <bean:write name="country" property="value"/> 
</logic:iterate> 

上面的代码首先定义了一个HashMap的对象,并向其中添加了5个元素,再把它存入pageContext对象中,命名为countries。令logic:iterate标记的name属性等于"countries",id为country。再让<bean:write>标记的name属性和logic:iterate 标记的id属性相对应,令property一个为"key",一个为"value"。便会有以下输出结果:

country1: 中国
country4: 法国
country5: 德国
country2: 美国
country3: 英国

从效果上看出,logic:iterate标记确定遍历了HashMap的每一个元素,但它并未按添加的顺序将其显示出来。这是因为HashMap 是无序存放的。

对List进行循环遍历
logic:iterate标记也可以对List型的对象进行遍历,以下是一段示例代码。

<% 
ArrayList list1 = new ArrayList(); 
list1.add("str1"); 
list1.add("str2"); 
list1.add("str3"); 
list1.add("str4"); 
list1.add("str5"); 
pageContext.setAttribute("testlist",list1); 
%> 
<logic:iterate id="showlist" name="testlist" indexId="index"> 
<bean:write name="index"/>: 
<bean:write name="showlist"/> 
</logic:iterate> 


运行效果如下:

0: str1
1: str2
2: str3
3: str4
4: str5

嵌套遍历
logic:iterate标记还可以进行嵌套遍历,以下是一段代码示例:

<% 
String [] colors = {"red","green","blue"}; 
String [] countries1 = {"中国","美国","法国"}; 
String [] persons = {"乔丹","布什","克林顿"}; 
ArrayList list2 = new ArrayList(); 
list2.add(colors); 
list2.add(countries1); 
list2.add(persons); 
pageContext.setAttribute("list2",list2); 
%> 
<logic:iterate id="first" name="list2" indexId="numberfirst"> 
     <bean:write name="numberfirst"/>: 
     <logic:iterate id="second" name="first"> 
         <bean:write name="second"/> 
     </logic:iterate> 
     <br> 
</logic:iterate> 


上面的代码使用了双重循环来遍历一个ArrayList对象,这个ArrayList对象内的每一个元素又是一个String型的数组。以下是运行效果:

0: red green blue
1: 中国 美国 法国
2: 乔丹 布什 克林顿
分享到:
评论

相关推荐

    struts 标签 logic:iterate使用 logic:iterate

    HTML页面部分的代码显示了如何在表格中使用`logic:iterate`标签遍历`list`集合,对于每个`accountBean`对象,将其属性值渲染到表格的相应单元格中。`bean:write`标签用于输出bean的属性值,例如`accountBean`的`...

    jsp脚本和标签:实现循环和分支逻辑

    jsp脚本和&lt;logic:iterate&gt;标签:实现循环和分支逻辑 jsp脚本和&lt;logic:iterate&gt;标签:实现循环和分支逻辑 jsp脚本和&lt;logic:iterate&gt;标签:实现循环和分支逻辑

    logic:iterate 是什么,怎么用

    ### logic:iterate 标签详解 #### 一、概述 `logic:iterate` 是 Struts 标签库中的一个重要组成部分,主要用于在 JSP 页面中循环遍历集合对象(如 List、Array 或 Map 等)。它能够有效地帮助开发者在前端展示动态...

    logic:iterate标签当遍历的collection为Map时的使用

    1. Map里存放的是bean时 &lt;br&gt;&lt;logic:iterate id="destMap" name="srcMap"&gt; &lt;br&gt; &lt;bean:define id="bean" name="destMap" property="value" /&gt; &lt;br&gt; &lt;bean:write name="bean" property="name" /&gt; &lt;br&gt;&lt;/...

    Struts Logic标签

    Struts Logic标签Struts Logic标签Struts Logic标签Struts Logic标签Struts Logic标签

    struts logic:iterater 换行

    在探讨“struts logic:iterater换行”的知识点时,我们首先需要理解Struts框架以及其内嵌的逻辑标签库(Logic Tag Library)中的`&lt;logic:iterate&gt;`标签的使用方式,尤其是如何在迭代过程中实现换行效果。下面将详细...

    struts1 table标签中Logic的使用属性

    此标签与`logic:empty`相反,用于检查变量是否非空。如果变量不为空,则执行该标签内的代码。 **示例:** ```jsp &lt;logic:notEmpty name="userList"&gt; &lt;!-- 如果userList非空,则执行这里的代码 --&gt; &lt;/logic:not...

    logic标签的问题及解答

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

    Struts标签 -LOGIC标签

    `logic:greaterThan`, `logic:lessThan`, `logic:greaterEqual`, 和 `logic:lessEqual`标签** 这些标签用于数值比较。例如,显示年龄大于18岁的用户: ```jsp &lt;logic:greaterThan name="user" property="age" ...

    struts logic标签库使用手册

    - `&lt;logic:lessThan&gt;`,`&lt;logic:lessEqual&gt;`,`&lt;logic:greaterThan&gt;`,`&lt;logic:greaterEqual&gt;`:这些标签用于比较数值大小,例如,`&lt;logic:lessThan name="age" value="18"&gt;`会检查`age`是否小于18。 这些标签都...

    logic:iterate产生问题的图

    logic:iterate 产生问题的图

    struts logic 标签解释 跟例子

    * `&lt;logic:equal&gt;`:比较变量是否等于指定的常量 * `&lt;logic:notEqual&gt;`:比较变量是否不等于指定的常量 * `&lt;logic:greaterEqual&gt;`:比较变量是否大于或等于指定的常量 * `&lt;logic:greaterThan&gt;`:比较变量是否大于...

    Struts1-Logic标签

    与`logic:empty`相反,`logic:notEmpty`标签用于判断对象不为空时执行其内部内容。这个标签常用来处理非空数据的情况。 3. `logic:equal`和`logic:notEqual` 这两个标签用于比较两个值是否相等或不等。`logic:equal...

    Struts logic标签及增删改查

    3. `&lt;logic:greaterThan&gt;`、`&lt;logic:lessThan&gt;`、`&lt;logic:greaterOrEqual&gt;`和`&lt;logic:lessOrEqual&gt;`: 这些标签用于数值比较,常用于数据过滤或者分页显示时的条件判断。 4. `&lt;logic:present&gt;`和`&lt;logic:notPresent&gt;...

    Logic 标签库.doc

    - 在处理表单验证时,可以使用`logic:equal`或`logic:notEqual`标签来检查输入值是否满足预设条件。 - 在页面导航中,`logic:forward`和`logic:redirect`标签可以用于根据条件重定向到不同的页面。 6. **优缺点**...

    struts1.x标签库详解

    * logic:messagePresent 标签:判断是否存在某个消息。 * logic:notEmpty 标签:判断某个集合是否为空。 * logic:present 标签:判断某个对象是否存在。 通过学习和掌握这些标签,可以快速地完成 Struts 相关的任务...

    struts logic标签(ppt)

    3. `&lt;logic:greaterThan&gt;`、`&lt;logic:lessThan&gt;`、`&lt;logic:greaterEqual&gt;`和`&lt;logic:lessEqual&gt;`标签: 这些标签用于数值比较。例如,判断用户年龄是否大于25岁: ```jsp &lt;logic:greaterThan value="25" property=...

    Struts中logic标签的使用

    - 使用`logic:iterate`时,确保集合已正确设置到请求、session或application作用域。 总结,Struts中的logic标签提供了一套便捷的条件判断和循环控制功能,使得在JSP页面中处理业务逻辑变得更加直观和简单。理解并...

    struts1逻辑标签logic的使用

    二、`&lt;logic:equal&gt;`和`&lt;logic:notEqual&gt;`标签 这两个标签用于比较两个值是否相等或不相等。它们可以比较字符串、数字,甚至对象属性。例如,比较用户输入的密码与数据库中的密码: ```jsp &lt;logic:equal param1="${...

Global site tag (gtag.js) - Google Analytics