一、逻辑控制标签
(1)条件标签
条件标签主要有<s:if><s:elseif><s:esle>3个子标签,用于执行基本的条件流转
<s:if test="#request.username=='admin'"> 您是admin! </s:if> <s:elseif test="#request.username=='manager'"> 您是manager! </s:elseif> <s:else> 您没有身份! </s:else>
|
test:条件判定语句,值为boolean类型。
(2)迭代标签
<s:iterator>标签用于遍历集合(java.util.Collection)或者枚举值(java.util.Iterator)类型的对象。
1)遍历普通List、数组
1 //后台存放数据到list中 2 List<String > list = newArrayList<String>(); 3 list.add("aaa");list.add("bbb"); list.add("ccc"); 4 5 <!-- 用iterator标签遍历list -- > 6 <s:iterator value="list"var="v"> 7 <s:property value="v"/><br> 8 </s:iterator> 9 或者: 10 <s:iteratorvalue="list"> 11 <s:property/><br> 12 </s:iterator>
|
2)遍历对象List、数组
13 <s:iterator value="users" id="us"> 14 <!--可以这样: <s:property value="#us.name"/> --> 15 <s:property value="name"/> 16 <s:property value="email"/><br/> 17 </s:iterator>
|
3) status属性的应用
18 <s:iterator value="users" id="us" status="u"> 19 序列号: <s:property value="#u.index"/> 20 姓名: <s:property value="name"/> 21 邮件: <s:property value="email"/> 22 23 是否第一条: <s:property value="#u.first"/> 24 是否最后一条:<s:property value="#u.last"/> 25 是否偶数行: <s:property value="#u.even"/> 26 是否奇数行: <s:property value="#u.odd"/> 27 当前行数: <s:property value="#u.count"/> </s:iterator> |
id:指定集合中元素在值栈中的名称。
value:指定迭代的迭代体。
var:指向值栈中的值。
status:该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置。