在Struts2 Iterator中的某个时刻中断

时间:2013-01-18 07:46:51

标签: java loops struts2

我在Struts2中嵌套迭代:

<s:iterator var="gift" value="user.gift">
    <s:iterator value="giftItems">
        <s:property value="type"/>
    </s:iterator>
</s:iterator>

我想最多只有10 type。如何在Struts2迭代中的某些时候打破?我可以有一个计数器变量,但不知道在迭代中断。

感谢。

2 个答案:

答案 0 :(得分:5)

如果您知道何时在开始迭代之前爆发,则可以使用begin和end属性。如果必须在迭代中计算中断,请在执行迭代之前设置变量并每次检查其值。在后一种情况下,循环技术上不会“破坏”,但效果会相同。

<s:set var = "breakLoop" value = "%{false}" />
<s:iterator....>
<s:if test = "!#breakLoop">
     //process here and change the var to true based on some codition
    <s:set var = "breakLoop" value = "%{true}"/>
</s:if>
</s:iterator>

答案 1 :(得分:1)