(二十)Struts2 控制标签

Posted 王卿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(二十)Struts2 控制标签相关的知识,希望对你有一定的参考价值。

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 控制标签的主要内容,如果未能解决你的问题,请参考以下文章

二十 Struts2的标签库

(二十一)Struts2 数据标签

(二十三)Struts2 Ajax标签

(二十二)Struts2 表单标签

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

struts2通用标签