| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 437 人关注过本帖
标题:Struts中如何实现查询结果分页显示
只看楼主 加入收藏
shitainong
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2012-7-6
结帖率:0
收藏
 问题点数:0 回复次数:0 
Struts中如何实现查询结果分页显示
  messagelist.do - > messagelist.jsp
  用 messagelist.do?start=0 来显示第一个页面
  参数说明:http://www.
  list:信息列表
  start:开始位置
  page:每页显示的信息数目
  previous:上页开始位置
  next:下页开始位置
  MessageListAction 里的 perform 是这样写的:
  ------------------------------------------------------------------------------------
  int start = Integer.parseInt(request.getParameter("start"));
  System.out.println ("Start:" + start);
  int page = 4;
  // create a message list
  Message[] list = new Message[16];
  for (int i=0; i< list.length; i++){
  list[i] = new Message(i ,"message" + i);
  }
  request.setAttribute("list", list);
  request.setAttribute("start", new Integer(start));
  request.setAttribute("page", new Integer(page));
  // if there is a previous page, set the previous variable
  int previous = start-page;
  if ( previous >=0 ){
  request.setAttribute("previous", new Integer(previous));
  System.out.println ("previous:" + previous);
  }
  // if there is a next page, set the next variable
  int next = start+page;
  if ( next< list.length ){
  request.setAttribute("next", new Integer(next));
  System.out.println ("next:" + next);
  }
  return (mapping.findForward("success"));
  ------------------------------------------------------------------------------------
  下面是 messagelist.jsp 里的内容:http://www.
  ------------------------------------------------------------------------------------
  < logic:iterate id="message" name="list" offset="start" length="page" >
  < br >< html:link
  paramId="id" paramName="message" paramProperty="id"
  page="/messagedetail.do" >
  < bean:write name="message" property="name" / >
  < /html:link >
  < /logic:iterate >
  < logic:present name="previous" >
  < br >< html:link
  paramId="start" paramName="previous"
  page="/messagelist.do" >
  上一页
  < /html:link >
  < /logic:present >
  < logic:present name="next" >
  < br >< html:link
  paramId="start" paramName="next"
  page="/messagelist.do" >
  下一页
  < /html:link >
  < /logic:present >
       http://www.
        http://www.
  ------------------------------------------------------------------------------------
  以此例子来说明 logic:iterate 在分页里的用法
  由于每次 messagelist.do 都会处理所有的 message,所以性能上还是可以再优化
  比如把 message 数组存放在 session 里。
搜索更多相关主题的帖子: 信息 previous start 如何 
2013-05-17 15:56
快速回复:Struts中如何实现查询结果分页显示
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020106 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved