参考博客:http://www.open-open.com/lib/view/open1342167592890.html
Struts2标签库
包括:
OGNL
Struts2标签分类
控制标签 :(if, elseif,else, iterator, append, merge, generator, subset, sort)
数据标签 :(bean, param,date, debug, include, set, url, push)
控制标签:
(1):
If elseif else
描述:
执行基本的条件流转。
参数:
名称 |
必需 |
默认 |
类型 |
描述 |
备注 |
test |
是 |
|
boolean |
决定标志里的内容是否显示的表达式 |
else标志没有这个参数 |
id |
否 |
|
Object/String |
用来标识元素的id。在UI和表单中为HTML的id属性 |
|
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> 2 <%@taglib prefix="s" uri="/struts-tags"%> 3 4 <%! Random rnd = new Random(); %> 5 <% int n =rnd.nextInt(200);pageContext.setAttribute("n",n); %> 6 <% out.println("随即到的数字为 : "+n); %> </br> 7 8 <s:if test="#attr.n % 7 == 0"> 9 恭喜您中了一等奖! 10 </s:if> 11 12 <s:elseif test="#attr.n % 5 ==0"> 13 恭喜您中了二等奖 14 </s:elseif> 15 16 <s:else>欢迎惠顾 17 </s:else>
输出结果:
(2)
Iterator(迭代)
描述:用于遍历集合(java.util.Collection)或枚举值(java.util.iterator)
参数
名称 |
必需 |
默认 |
类型 |
描述 |
status |
否 |
|
String |
如果设置此参数,一个IteratorStatus的实例将会压入每一个遍历的堆栈 |
value |
否 |
|
Object/String |
要遍历的可枚举的(iteratable)数据源,或者将放入的新列表(List)的对想 |
id |
否 |
|
Object/String |
用来标识元素的id。在ui和表单中为HTML的id属性 |
用于循环数组,集合和Map
属性:
value:数组,集合或Map
var:当前元素
status:当前元素的状态index,count,even,odd,first,last
1 <!-- 遍历Map --> 2 <s:iterator var="c" value="#{'china':'中国','usa':'美国' }" status="st"> 3 <s:property value="#st.count"/> 4 <s:property value="#c.key"/> 5 <s:property value="#c.value"/> 6 <br/> 7 </s:iterator> 8 9 <hr/> 10 <!-- 遍历list --> 11 <s:iterator value="{'中华人民共和国', '美利坚合众国', '阿拉伯联合酋长国'}" var="cur"status="st"> 12 13 <s:property value="#st.index"/> 14 15 <s:property value="#cur"/><br/> 16 17 </s:iterator>
输出结果: