Struts 2 有一組標(biāo)簽使得控制頁面執(zhí)行流非常容易。以下是重要的 Struts 2 控制標(biāo)簽的列表:
該標(biāo)簽實現(xiàn)基本的能夠在每種語言中找到的條件流。'If' 標(biāo)簽?zāi)軌騿为毷褂没蚺c 'Else If' 標(biāo)簽一起使用,單個/多個 'Else' 標(biāo)簽如下所示:
<s:if test="%{false}">
<div>Will Not Be Executed</div>
</s:if>
<s:elseif test="%{true}">
<div>Will Be Executed</div>
</s:elseif>
<s:else>
<div>Will Not Be Executed</div>
</s:else>
迭代標(biāo)簽會迭代一個值。一個迭代的值可以是任何 java.util.Collection 或 java.util.Iterator。當(dāng)?shù)粋€值時,你可以使用 Sort 標(biāo)簽來把結(jié)果分類或者使用 SubSet 標(biāo)簽得到列表或數(shù)組的子集。
以下例子檢索了值棧中當(dāng)前對象的 getDays() 方法的值,并用它迭代。
<s:iterator value="days"> <p>day is: <s:property/></p> </s:iterator>
融合標(biāo)簽將兩個或多個列表作為參數(shù)并把它們?nèi)诤显谝黄穑缦滤荆?/p>
<s:merge var="myMergedIterator">
<s:param value="%{myList1}" />
<s:param value="%{myList2}" />
<s:param value="%{myList3}" />
</s:merge>
<s:iterator value="%{#myMergedIterator}">
<s:property />
</s:iterator>
附加標(biāo)簽將兩個或多個列表作為參數(shù)并把它們附加在一起,如下所示:
<s:append var="myAppendIterator">
<s:param value="%{myList1}" />
<s:param value="%{myList2}" />
<s:param value="%{myList3}" />
</s:append>
<s:iterator value="%{#myAppendIterator}">
<s:property />
</s:iterator>
生成器標(biāo)簽生成基于提供的 val 屬性的迭代器。下面的例子中,生成器標(biāo)簽生成了一個迭代器并用迭代器標(biāo)簽把它輸出出來。
<s:generator val="%{'aaa,bbb,ccc,ddd,eee'}">
<s:iterator>
<s:property /><br/>
</s:iterator>
</s:generator>