action包装好Map传到页面用iterator解析
2012-08-01 16:37
169 查看
今天遇到一个问题,就是action提取出微博List,然后再根据微博List里的id去提取出对应的回复;
以前的做法是把这两个List都传到页面上,然后再页面上循环把属于该微博的回复加载到该微博下。
后来发现这种做法很浪费时间,因为有很多多余的循环。
现在的做法是把微博和属于该微博的回复放到一个Map里面,页面直接解析Map里的数据就可以了。
private Map<CyTopic, List<CyTopicReply>> topicWithReply = new HashMap<CyTopic, List<CyTopicReply>>();
for ( int i = 0; i < topicList.size(); i++ )
{
topicWithReply.put(topicList.get(i), trService.loadTopicReplyById(topicList.get(i).getId()));
}
页面上用下面方法循环出来就可以了:
<s:iterator value="topicWithReply" id="column">
<s:property value="#column"/><br>
key: <s:property value="key"/><br>
------:${key.content }
value:<s:property value="value"/><br>
<s:iterator value="#column.value" status="s">
<s:property value="id"/></br>
<s:property value="content"/></br>
${replyerName }
</s:iterator>
--------------------------------------------------------------------
在运行中发现了一个问题,就是hashMap是无顺序的,但是在前端显示时需要微博是有顺序的,所以改用LinkedHashMap就会解决
以前的做法是把这两个List都传到页面上,然后再页面上循环把属于该微博的回复加载到该微博下。
后来发现这种做法很浪费时间,因为有很多多余的循环。
现在的做法是把微博和属于该微博的回复放到一个Map里面,页面直接解析Map里的数据就可以了。
private Map<CyTopic, List<CyTopicReply>> topicWithReply = new HashMap<CyTopic, List<CyTopicReply>>();
for ( int i = 0; i < topicList.size(); i++ )
{
topicWithReply.put(topicList.get(i), trService.loadTopicReplyById(topicList.get(i).getId()));
}
页面上用下面方法循环出来就可以了:
<s:iterator value="topicWithReply" id="column">
<s:property value="#column"/><br>
key: <s:property value="key"/><br>
------:${key.content }
value:<s:property value="value"/><br>
<s:iterator value="#column.value" status="s">
<s:property value="id"/></br>
<s:property value="content"/></br>
${replyerName }
</s:iterator>
--------------------------------------------------------------------
在运行中发现了一个问题,就是hashMap是无顺序的,但是在前端显示时需要微博是有顺序的,所以改用LinkedHashMap就会解决
相关文章推荐
- 如何将利用struts2的iterator标签遍历的对象属性传到action中
- jsp页面,使用Struts2标签,传递和获取Action类里的参数,注意事项。<s:a action><s:iterator><s:param>ognl表达式 在编写SSH2项目的时候,除
- 一段可以使用的 hibernate获得对象->action存入List->jsp页面用<s:iterator>迭代的代码
- struts2中的jsp页面通过iterator调取后台action中的list集合
- JSON Iterator 解析(含map格式)
- Struts2三种传参方式(从jsp页面传到Action)
- action向页面传递数据,拦截那些没必要传到客户端的方法。includeProperties
- javascript应用:页面解析list和map封装后的json数据
- ajax将前台的Map类型数据传到Servlet并解析的方法。
- struts2第十七讲学习笔记,Action处理复选框与JSP页面使用ognl处理map
- 将 jsp 页面的值 传到struts2 action中(不是表单中的值)
- springmvc+ajax+json从页面传数据到后台,以及后台传Map集合到ajax解析
- 【郭林专刊】Struts2三种传参方式(从jsp页面传到Action) .
- Struts2三种传参方式(从jsp页面传到Action)
- Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)
- Struts2三种传参方式(从jsp页面传到Action)
- Struts2三种传参方式(从jsp页面传到Action)
- struts2 action 前端 iterator 标签遍历 map, list, array 数组
- 页面数据以json格式传到后台并解析
- Struts2三种传参体式格式(从jsp页面传到Action)