HibernatePager基础介绍

本文向大家介绍Hibernate Pager,可能好多人还不了解Hibernate Pager,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

创新互联是一家以网络技术公司,为中小企业提供网站维护、做网站、网站建设、网站备案、服务器租用、申请域名、软件开发、小程序定制开发等企业互联网相关业务,是一家有着丰富的互联网运营推广经验的科技公司,有着多年的网站建站经验,致力于帮助中小企业在互联网让打出自已的品牌和口碑,让企业在互联网上打开一个面向全国乃至全球的业务窗口:建站服务电话:028-86922220

Hibernate Pager具体实现

1.Hibernate Pager类

 
 
 
  1. package com.jpcf.db.helper;  
  2. import java.math.*;  
  3. public class Pager {  
  4. private int totalRows; //总行数  
  5. private int pageSize = 10; //每页显示的行数  
  6. private int currentPage; //当前页号  
  7. private int totalPages; //总页  
  8. private int startRow; //当前页在数据库中的起始行  
  9. public Pager() {  
  10. }  
  11. public Pager(int _totalRows) {  
  12. totalRows = _totalRows;  
  13. totalPages=totalRows/pageSize;  
  14. int mod=totalRows%pageSize;  
  15. if(mod>0){  
  16. totalPages++;  
  17. }  
  18. currentPage = 1;  
  19. startRow = 0;  
  20. }  
  21. public int getStartRow() {  
  22. return startRow;  
  23. }  
  24. public int getTotalPages() {  
  25. return totalPages;  
  26. }  
  27. public int getCurrentPage() {  
  28. return currentPage;  
  29. }  
  30. public int getPageSize() {  
  31. return pageSize;  
  32. }  
  33. public void setTotalRows(int totalRows) {  
  34. this.totalRows = totalRows;  
  35. }  
  36. public void setStartRow(int startRow) {  
  37. this.startRow = startRow;  
  38. }  
  39. public void setTotalPages(int totalPages) {  
  40. this.totalPages = totalPages;  
  41. }  
  42. public void setCurrentPage(int currentPage) {  
  43. this.currentPage = currentPage;  
  44. }  
  45. public void setPageSize(int pageSize)   
  46. this.pageSize = pageSize;  
  47. }  
  48. public int getTotalRows() {  
  49. return totalRows;  
  50. }  
  51. public void first() {  
  52. currentPage = 1;  
  53. startRow = 0;  
  54. }  
  55. public void previous() {  
  56. if (currentPage == 1) {  
  57. return  
  58. }  
  59. currentPage--;  
  60. startRow = (currentPage - 1) * pageSize;  
  61. }  
  62. public void next() {  
  63. if (currentPage < totalPages) {  
  64. currentPage++;  
  65. }  
  66. startRow = (currentPage - 1) * pageSize;  
  67. }  
  68. public void last() {  
  69. currentPage = totalPages;  
  70. startRow = (currentPage - 1) * pageSize;  
  71. }  
  72. public void refresh(int _currentPage)   
  73. currentPage = _currentPage;  
  74. if (currentPage > totalPages) {  
  75. last();  
  76. }  
  77. }  

Hibernate Pager类用于计算首页、前一页、下一页、尾页的在数据库中的起始行,当前的页码。

2.Hibernate PagerHelp类

 
 
 
  1. package com.jpcf.db.helper;  
  2. import javax.servlet.http.*;  
  3. public class PagerHelper {  
  4. public static Pager getPager(HttpServletRequest httpServletRequest,  
  5. int totalRows) {  
  6. //定义pager对象,用于传到页面  
  7. Pager pager = new Pager(totalRows);  
  8. //从Request对象中获取当前页号String currentPage = httpServletRequest.
  9. getParameter("currentPage");  
  10. //如果当前页号为空,表示为首次查询该页  
  11. //如果不为空,则刷新pager对象,输入当前页号等信  
  12. if (currentPage != null) {  
  13. pager.refresh(Integer.parseInt(currentPage));  
  14. }  
  15. //获取当前执行的方法,首页,前一页,后一页,尾页。  
  16. String pagerMethod = httpServletRequest.getParameter("pageMethod");  
  17. if (pagerMethod != null) {  
  18. if (pagerMethod.equals("first")) {  
  19. pager.first()  
  20. } else if (pagerMethod.equals("previous")) {  
  21. pager.previous();  
  22. } else if (pagerMethod.equals("next")) {  
  23. pager.next();  
  24. } else if (pagerMethod.equals("last")) {  
  25. pager.last();  
  26. }  
  27. }  
  28. return pager;  
  29. }  

Hibernate PagerHelper这个类,我不用说应该也知道用来干嘛了

【编辑推荐】

  1. Hibernate3.1简单描述
  2. Hibernate save基础简介
  3. 浅析Hibernate 3二级缓存基础
  4. Hibernate流行架构浅析
  5. Hibernate update浅谈

本文标题:HibernatePager基础介绍
地址分享:http://www.csdahua.cn/qtweb/news9/232409.html

网站建设、网络推广公司-快上网,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 快上网