日期:2014-05-20  浏览次数:20737 次

struts2 list 求和
使用struts2,在action中
HttpServletRequest request=ServletActionContext.getRequest();
List list=new ArrayList();
list.add(2);
list.add(4);
list.add(6);
list.add(7);
request.setAttribute("list", list);
只要加到list里面的是数字就行,请问在jsp页面中如何使用struts2标签得到list中的和

------解决方案--------------------
在外面用set定义个属性
然后用iterate标签循环读出逐个值加在上面定义的那个属性就行了。
struts标签很久没用了,不记到了,楼主查查帮助文档看看属性就知道,灰常简单的
------解决方案--------------------
用forEach。给你个例子。<c:forEach var="scoreQuestionsCollection" items="${scoreQuestions}">
<tr>
<td width="10%" bgcolor="#FFFFFF" align="center" class="font-bor" colspan="4">
${scoreQuestions.quesionName }(${scoreQuestions.notes}):
</td>
</tr>
<tr>

</tr>
</c:forEach>

------解决方案--------------------
HTML code

<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%@ page import="java.util.*"%>
<%
List list = new ArrayList();
Map<String,Integer> map = new HashMap<String,Integer>();
map.put("item",100);
list.add(map);
map = new HashMap<String,Integer>();
map.put("item",200);
list.add(map);
map = new HashMap<String,Integer>();
map.put("item",300);
list.add(map);
map = new HashMap<String,Integer>();
map.put("item",400);
list.add(map);

request.setAttribute("list",list);
%>

<s:set id="count" value="0"/>
<s:iterator id="list" value="#request.list">
    <s:set id="count" value="#count + #list.item"/>
</s:iterator>
<s:property value="#count"/>

------解决方案--------------------
不用map或实体类存数字的话,不知道怎样获取list中的值。。求解。。
------解决方案--------------------
可以了。。
HTML code

<%@ page language="java" pageEncoding="utf-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%@ page import="java.util.*"%>
<%
List list = new ArrayList();
list.add(100);
list.add(200);
list.add(300);
request.setAttribute("list",list);
%>

<s:set id="count" value="0"/>
<s:iterator id="list" value="#request.list">
    <s:set id="count" value="#count + #list"/>
</s:iterator>
<s:property value="#count"/>