一:首先是<s:iterator></s:iterator>遍历map中的list集合,代码如下:
1.首先是后台代码,包括定义map和给map中赋值,代码如下:
package cn.gov.csrc.cms.action;import java.util.HashMap;
import java.util.List;
import java.util.Map;import javax.annotation.Resource;import org.apache.struts2.ServletActionContext;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ExceptionMapping;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.dispatcher.SessionMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;import cn.gov.csrc.base.action.BaseAction;
import cn.gov.csrc.cms.model.UserInfo;
import cn.gov.csrc.cms.service.UserService;
import cn.gov.csrc.cms.util.Globals;
import cn.gov.csrc.cms.util.PageData;
import cn.gov.csrc.cms.util.PageNavUtil;import com.opensymphony.xwork2.ActionContext;@Controller
@Scope("prototype")
public class UserAction extends BaseAction<UserInfo>{private static Logger logger = LoggerFactory.getLogger(UserAction.class);private static final long serialVersionUID = 1L;private Integer page;private Map<String, Object> dataMap;public UserAction(){dataMap = new HashMap<String, Object>();}@Resourceprivate UserService userService;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}@Action(value = "UserAction_find", results = { @Result(name = "success", location = "/WEB-INF/admin/user/userList.jsp") })public String find() {page = page == null ? 1 : page < 1 ? 1:page;int pageSize = 10;PageData<UserInfo> pageData = this.userService.getUsers(page,pageSize,model.getUserName());dataMap.clear();dataMap.put("dataList", pageData.getPageData());dataMap.put("totalCount", pageData.getTotalCount());dataMap.put("totalPage", pageData.getTotalPage());dataMap.put("currentPage", page);dataMap.put("pageNav", PageNavUtil.getPageNavHtml(page.intValue(), pageSize, pageData.getTotalCount(), 15));ActionContext.getContext().getSession().put("dataMap", dataMap);return "success";}public Integer getPage() {return page;}public void setPage(Integer page) {this.page = page;}}
2.其次是在前台页面接收map中list的值,这里我用的是jsp接收值,代码如下:
<form action="./UserAction_delete.action" id="mainForm" method="post"><table class="table table-striped table-hover"><thead><tr><th style="width: 8px;"><input type="checkbox" id="checkall" class="group-checkable" /></th><th>编号</th><th>登录名</th><th>用户姓名</th><th>电话</th><th>部门</th><th>岗位</th><th>操作</th></tr><c:if test="${totalCount==0}"><tr><td colspan="8">没有相关数据</td></tr></c:if></thead><s:iterator value="#session.dataMap.dataList" status="user" ><tbody><tr class="odd gradeX"><td class="hidden-480"><input type="checkbox" class="checkboxes" name="ids" value="${id }" /></td><td class="hidden-480"><s:property value="#user.index+1" /></td><td class="hidden-480"><s:property value="userName" /></td><td class="hidden-480"><s:property value="realName" /></td><td class="hidden-480"><s:property value="phone" /></td><td class="hidden-480"><s:property value="dept" /></td><td class="hidden-480"><s:property value="post" /></td><td class="hidden-480"><s:url id="url" action="UserAction_toUpdate" namespace="/"><s:param name="id" value="id" /></s:url><a class="btn mini purple thickbox" title='编辑和用户权限' href="<s:property value="#url"/>"><i class="icon-edit"></i>编辑和用户权限</a></td></tr></tbody></s:iterator></table>
</form>
二:其次是<c:forEach></c:forEach>遍历map中的list集合,代码如下:
1.后台代码和上面的一样;
2.前台代码如下:
<c:forEach items="${dataMap.dataList}" var="dataItem" varStatus="rowStatus" >
<tbody><tr class="odd gradeX"><td class="hidden-480"><input type="checkbox" class="checkboxes" name="ids" value="${dataItem.id }" /></td><td class="hidden-480"><s:property value="#dataItem.index+1" /></td><td class="hidden-480">${dataItem.userName}</td><td class="hidden-480"><s:property value="realName" /></td><td class="hidden-480"><s:property value="phone" /></td><td class="hidden-480"><s:property value="dept" /></td><td class="hidden-480"><s:property value="post" /></td><td class="hidden-480"><s:url id="url" action="UserAction_toUpdate" namespace="/"><s:param name="id" value="id" /></s:url><a class="btn mini purple thickbox" title='编辑和用户权限' href="<s:property value="#url"/>"><i class="icon-edit"></i>编辑和用户权限</a></td></tr>
</tbody>
</c:forEach>