1. 程式人生 > >(二十)Struts2 控制標簽

(二十)Struts2 控制標簽

.html 示例 gen href 方便 merge edi 合並 標簽

Struts2 標簽有一組標簽,可以方便地控制頁面執行的流程。以下是主要的Struts2 控制標簽:

if和else標簽

這些標簽執行在每種語言中找到的基本條件流。“If”標簽可以單獨使用,也可以與“Else If”標簽,和單個或是多個“Else”標簽一起使用,如下所示:

<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>

  

iterator標簽

這些iterator將叠代一個值。可叠代值可以是以下任一值:java.util.Collection,java.util.Iterator。在叠代一個iterator時,可以使用Sort標簽對結果進行排序,或者使用SubSet標簽來獲取列表或數組的子集。
以下示例是檢索值棧上當前對象的getDays()方法的值,並使用它叠代。<s:property/>標簽印出叠代器的當前值。

<s:iterator value="days">
  <p>day is: <s:property/></p>
</s:iterator>

  

merge標簽

這些merge標簽采用兩個或多個列表作為參數,並將它們合並在一起,如下所示:

<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>

  

append標簽

這些append標簽采用兩個或多個列表作為參數,並將它們全部附加在一起,如下所示:

<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>

  

generator標簽

這些generator標簽基於提供的val屬性生成叠代器。下面的generator標簽生成一個叠代器並使用iterator標簽打印出來。

<s:generator val="%{‘aaa,bbb,ccc,ddd,eee‘}">
 <s:iterator>
     <s:property /><br/>
 </s:iterator>
</s:generator>

  

(二十)Struts2 控制標簽