s2sh 实现分页显示,分页标准模版
2012-09-02 15:48
197 查看
实现分页的模版代码。服务器端只需要传回一个List就ok了。
jsp的代码:
action 中的代码很简单,就是调用service的查说有就行了
不要忘记了属性的getter/setter方法
service方法调用dao里的查询按分页方法
dao里则更具传过来得页数来查询相应的内容,
代码:
jsp的代码:
<%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib prefix="s" uri="/struts-tags" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <script type="text/javascript"> window.onload=function(){ var goPage = document.getElementById("goPage"); var go = document.getElementById("go"); go.onclick=function(){ var num = goPage.value; if(parseInt(num)){ if(num<=0){ goPage.value=1; } else if(num>=${pageInfo.pageCount}){ goPage.value=${pageInfo.pageCount}; } document.getElementById("form").submit(); } else{ alert("无效页数!") } } } </script> </head> <body> <table align="center" width="80%"> <tr><th>部门编号</th><th>部门名称</th><th>部门位置</th></tr> <s:iterator value="list" id="d"> <tr align="center"><td>${deptno }</td><td>${dname }</td><td>${loc }</td></tr> </s:iterator> </table> <div align="center"> <s:if test="pageInfo.pagenum==1"> 首页 上一页 </s:if> <s:else> <a href="dept!getAllDeptByPage.action?pageInfo.pagenum=1">首页</a> <a href="dept!getAllDeptByPage.action?pageInfo.pagenum=${pageInfo.pagenum-1 }">上一页</a> </s:else> <s:if test="pageInfo.pagenum==pageInfo.pageCount"> 下一页 尾页 </s:if> <s:else> <a href="dept!getAllDeptByPage.action?pageInfo.pagenum=${pageInfo.pagenum+1 }">下一页</a> <a href="dept!getAllDeptByPage.action?pageInfo.pagenum=${pageInfo.pageCount }">尾页</a> </s:else> 第${pageInfo.pagenum }页/共${pageInfo.pageCount }页 <form action="dept!getAllDeptByPage.action" method="post" id="form"> 跳转到<input type="text" name="pageInfo.pagenum" id="goPage" size="1"/>页 <input type="button" value="go" id="go"/> </form> </div> </body> </html>
action 中的代码很简单,就是调用service的查说有就行了
private DeptServiceImpl service; private List list; private PageInfo pageInfo; public String getAllDeptByPage()throws Exception{ String target = ""; list = service.getAllByPage(pageInfo); System.out.println(list.size()); target = "deptMain"; return target; }
不要忘记了属性的getter/setter方法
service方法调用dao里的查询按分页方法
private DAO dao; public List getAllByPage(PageInfo pageInfo){ System.out.println("查所有分页"); List list = null; String hql = "from Dept2 d"; list = dao.getQueryByPage(hql, pageInfo); System.out.println(list.size()); return list; }
dao里则更具传过来得页数来查询相应的内容,
代码:
public List getQueryByPage(final String hql, final PageInfo pageInfo) { List list = null; list = (List)this.getHibernateTemplate().executeWithNativeSession(new HibernateCallback(){ List list = null; public Object doInHibernate(Session session) throws HibernateException, SQLException { Query query = session.createQuery(hql); ScrollableResults sr = query.scroll(); sr.last(); int rowNumber = sr.getRowNumber(); System.out.println("一共多少条2222:"); System.out.println(rowNumber+1); pageInfo.setRowCount(rowNumber+1); query.setFirstResult(pageInfo.getBegin()-1); query.setMaxResults(pageInfo.getPerCount()); list = query.list(); return list; } }); return list; }
相关文章推荐
- 实现小数据量和海量数据的通用分页显示存储过程
- struts 下面的页面分页显示的实现
- springmvc + jquery easyui实现分页显示
- jQuery+Ajax+PHP+Mysql实现分页显示数据
- ajax 笔记--不用刷新实现数据的分页显示
- 超简单的自定义标签封装实现的JSP分页显示功能
- Goods:分页显示页面导航条的实现
- Java Web中的分页显示——通过界面实现
- jsp实现分页显示信息(数据库、EL表达式、连接池)
- ListView实现下拉刷新,分页显示(案例源码)
- 记录集分页显示策略五种实现方法
- jQuery+Ajax+PHP实现异步分页数据显示--js可参考
- 通用权限管理系统组件 (GPM - General Permissions Manager) 中实现大数据的高效分页显示
- JAVA中displaytag标记库实现分页显示下载网站
- 分页页码的前端显示的实现
- 利用数据库实现分页,并显示在Table中
- JS~Boxy和JS模版实现一个标准的消息提示框
- 半透明窗口中显示标准控件(控件与文字不透明)的实现方案(附源码)
- Asp.net MVC 中利用jquery datatables 实现数据分页显示功能
- jquery+ashx无刷新GridView数据显示插件(实现分页、排序、过滤功能)