日期:2014-05-16  浏览次数:20327 次

Jsp里面 List显示
在Struts 2中,循环显示List中的数据使用什么标签?

用的是iterator标签
<s:iterator value="#request.list" var="user">
<s:property value="#user.name"/>
</s:iterator>


用<logic:iterator>
给你说个例子吧
<logic:iterate id="SubSecond" name="subsecondlist">
  <bean:write name="SubSecond" property="subSecondId"/>
</logic:iterate>
logic:iterate id是类的名称 name是你request或session里放的对象

bean:write name是类名 property是属性




先从数据库中提取出数据放在list中

<table>
    <%
       List list = session.getAttribute("list");
      for(int i=0;i<list.size();i++)
      {
        Flight flight = (Flight)list.get(i);
     %>
    <tr>
       <td><%=flight.get   提取对象中的属性 %></td>
    </tr>
    <%
     }
    %>
</table>



用jstl,el输出
jsp页面头加:
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

页面中这样取值输出:
<c:forEach items="${后台传来的list}" var="新起变量名">
     ${新起变量名.属性名 }
</c:forEach>

后台list处理的时候最好使用泛型,这样不要强转类型



方法-:直接在action设置get和set方法,然后在jsp页面中使用iterator迭代输出,但是一定要注意格式。就是被这个格式搞了一下午。

<s:iterator value="list" id="id">
  <tr><td><s:property value="#id.number" /></td> //使用标签
  <td>${id.name}</td></tr> //使用EL表达式
  </s:iterator>

或者是不声明id,直接<s:property value="number" />