struts2控制标签(一)选择标签,iterator标签,append标签

本文深入探讨了Struts框架中选择、迭代器、status属性和append标签的使用方法,通过具体示例展示了如何高效地处理集合数据,特别强调了状态属性在迭代过程中的应用,以及如何利用append标签实现集合的连接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

选择标签就不用说了

iterator迭代器标签主要是对集合进行迭代操作,集合可以是List,Map,Set和数组等

id:指定集合元素的ID

value: 指定迭代输出的集合,该集合可以试OGNL表达式,也可以通过Action返回一个集合

status:指定集合中的元素的status属性

另外status属性还可以实现一些很有用的功能。指定status属性后,每次迭代都会产生一个iteratorstatus实例对象,该对象有如下方法:

int getCount():返回当前迭代元素的个数

int getIndex():判断当前迭代元素的迭代值

boolean isEven():判断当前迭代元素的索引值是否为偶数

boolean isOdd():判断当前迭代元素的索引值是否为奇数

boolean isFirst():判断当前迭代元素是否是第一个元素

boolean isLast():判断当前迭代元素是否是最后一个元素

还包括有些常用的属性:#status.count,#status.even,#status.odd,#status.first等

<s:append>标签用来将多个集合对象连接起来组成一个新的集合,并允许通过一个iterator标签完成对多个集合的迭代

id:连接生成的新集合的名字

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>控制标签的使用</title>
  </head>  
  <body>
    <!-- 选择标签 -->
    <s:set name="score" value="90"></s:set><!-- score变量名的值是90 -->
    
    <s:if test="#score>=90">优秀</s:if>
    <s:elseif test="#score>=80">良好</s:elseif>
    <s:elseif test="#score>=70">中等</s:elseif>
    <s:elseif test="#score>=60">及格</s:elseif>
    <s:else>不及格</s:else>
    <!-- iterater的标签 -->
    <hr>
    <h2>iterator迭代器标签的使用</h2>
    <hr>
    <s:iterator value="{'java编程思想','javaweb实践','计算机网络','通信原理','java核心讲义'}" id="bookname">
       <s:property value="bookname"/><br>
    </s:iterator>
    <hr>
    <h2>iterator迭代器标的status属性使用</h2>
    <hr>
    <table border="1" style="border-collapse:collapse" width="300">
         <s:iterator value="{'java编程思想','javaweb实践','计算机网络','通信原理','java核心讲义'}" id="bookname" status="st"><!-- 状态属性设置为st -->
              <!--奇数行设置为红色 -->  
           <tr <s:if test="#st.odd"> style="background-color:red"</s:if>
                   <td>
                     <s:property value="bookname"/><br>
                   </td>
           </tr>
          </s:iterator>
    </table>
    
    <hr>
    <h2>append标签的使用</h2>
    <hr>
    <s:append id="newlist"><!-- 里面放要连接的集合 -->
        <s:param value="{'javascript权威指南','电脑软件编程','windows系统编程'}"></s:param>
        <s:param value="{'javascript高级程序设计','雅思学习笔记','mysql和php程序设计'}"></s:param>
    </s:append> 
     <table border="1" style="border-collapse:collapse" width="300">
         <s:iterator value="#newlist" id="bookname" status="st"><!-- 状态属性设置为st,value的值是newlist -->
              <!--奇数行设置为红色 -->  
           <tr <s:if test="#st.odd"> style="background-color:red"</s:if>>
                   <td>
                     <s:property value="bookname"/><br>
                   </td>
           </tr>
          </s:iterator>
    </table>
    
  </body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值