此文在“使用struts的标记”一文基础上稍微改动。
iterate-view.jsp:
<logic:iterate id="iterate" name="ibean" property="name" scope="request" offset="0" >
★〓〓〓〓〓〓〓〓★<br>
<%
String[] temp = (String[]) iterate;
%>
<%=temp[0]%> | <%=temp[1]%> | <%=temp[2]%> <p>
</logic:iterate>
IterateAction.java:
package beantest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
public class IterateAction extends Action {
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws Exception {
IterateBean ibean = (IterateBean) form;
String[][] temp = {{"a1","a2","a3"},{"b1","b2","b3"}};
ibean.setName(temp);
return mapping.findForward("iterate-view");
}
}
IterateBean.java
package beantest;
import org.apache.struts.action.ActionForm;
public class IterateBean extends ActionForm {
private String[][] name = null;
public void setName(String[][] name) {
this.name = name;
}
public String[][] getName() {
return this.name;
}
}
输出效果:
http://localhost:8080/mystruts/eye/iterate-test
★〓〓〓〓〓〓〓〓★
a1 | a2 | a3
★〓〓〓〓〓〓〓〓★
b1 | b2 | b3
可见,虽然iterate标记本身比较简单,但结合一些技巧,仍然能够实现一些特殊功能。
分享到:
相关推荐
### Scala里的数组方法 在Scala语言中,数组作为一种基本的数据结构,在处理大量数据时非常有用。Scala提供了丰富的数组操作方法,这些方法可以帮助开发者更高效、更简洁地进行数组的管理和操作。下面将详细介绍...
在`struts`的标签库中,`logic:iterate`是一个非常重要的标签,用于遍历集合对象,如`List`、`Map`或数组,并对每个元素执行循环操作。 `logic:iterate`标签的主要属性包括: 1. `id`: 用于给循环中的当前元素创建...
注意,`#{ids[index]}`中的`index`是可选的,如果省略,则默认使用集合中的元素。如果需要访问集合中的对象属性,可以指定`index`,例如`#{ids.user_id}`。 除了基本的`<iterate>`用法,还可以结合其他标签如`<if>`...
而`<iterate>`标签是iBATIS提供的一个便利的循环结构,用于处理数组、集合或Map等数据结构,方便地生成动态SQL。 在描述中提到的博文链接,虽然没有提供具体内容,但通常博主会分享如何使用`<iterate>`标签以及在...
- 使用 `<logic:iterate>` 遍历名为 `list` 的集合,集合元素类型为 `example.User`。 - 通过 `<bean:write>` 输出每个用户的名字和密码。 ##### 3. 创建 User 类 为了配合上述示例,还需要创建一个 `User` 类: ...
在使用`logic:iterate`标签时,还可以设置其他属性,比如`indexId`用于存储当前迭代的索引,`length`和`offset`用于限制遍历的范围。`id`属性则用于在迭代过程中为每个元素提供一个唯一的ID,以便于在页面上引用。 ...
jsp脚本和<logic:iterate>标签:实现循环和分支逻辑 jsp脚本和<logic:iterate>标签:实现循环和分支逻辑 jsp脚本和<logic:iterate>标签:实现循环和分支逻辑
logic:iterate 产生问题的图
但缺点是需要更多的数据库交互,可能影响整体性能,而且无法直接进行集合操作,需要配合迭代器来使用。 在启用二级缓存的情况下,`list`和`iterate`方法的行为也会有所不同。对于`list`,如果查询结果已经在二级...
1. Map里存放的是bean时 <br><logic:iterate id="destMap" name="srcMap"> <br> <bean:define id="bean" name="destMap" property="value" /><br> <bean:write name="bean" property="name" /><br> </...
iterate 运算符接受一个数组或实现 iterate 的对象,并返回一个迭代器,如,带有一些扩展。 迭代具有索引属性,索引与值对应。 var iterator = iterate ( [ 1 , 2 , 3 ] ) ; expect ( iterator . next ( ) ) . to...
本压缩包"Sor_iterate.rar"包含了一个用Fortran编写的SOR方法实现,文件名为"sor_iterate.f90"。 Fortran是一种广泛用于科学计算的编程语言,以其高效和简洁的语法深受科研人员喜爱。在"sor_iterate.f90"中,我们...
确保正确设置输出文件名,可以使用“Set Value”工具结合“Iterate Field Values”的输出来动态命名新shp文件。 9. **运行模型**:保存模型,然后在模型建设者中运行它。这将会根据字段值逐一创建新的shp文件,每个...
下面我们将详细探讨多维k-means聚类算法的基本原理、步骤以及如何用Java实现。 ### 1. 算法原理 k-means算法基于以下两个核心思想: - **中心点选择**:首先随机选择k个数据点作为初始的聚类中心。 - **分配与...
iterate :根据延续方法(如果有)迭代输入数组中的元素,并将结果作为“数组”返回。 reset :重置迭代器(包括迭代指针和输出数组)以用于其他迭代,而无需创建新的迭代器。 基本上促进了可重用性。 用法: var x...
通过上述步骤,我们可以有效地使用DWR调用Java类中的方法获取数据,并将返回的ArrayList数组赋值给前端的逻辑迭代器。这种方式不仅简化了前后端之间的交互逻辑,还提高了程序的可维护性和扩展性。对于需要频繁进行...
在描述中,我们了解到这是一个Python库,这意味着它是用Python编程语言编写的,可以被其他Python项目引入和使用,以增强或扩展其功能。"1.0a1.2"是这个库的版本号,其中"a1.2"代表这是一个预发行版(Alpha版本),...
4. **第二层遍历**:对于每一个键值对,如果值是数组类型,则再次使用`<logic:iterate>`标签来遍历数组。这里`name`属性指定了数组的来源,即`element`(第一层迭代的元素),而`property`属性指定了数组的键名`...
8. **numpy库**:numpy是Python中用于科学计算的核心库,提供高效的多维数组操作。`meshgrid`函数用于创建网格坐标,方便对每个点进行迭代计算。 9. **文件保存与显示**:使用`plt.savefig`函数可以将生成的图像...
var iterate = require ( 'random-iterate' ) var ite = iterate ( [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 ] ) console . log ( ite ( ) ) // maybe 4 console . log ( ite ( ) ) // maybe 9 . . . 7 more time . . ...