`
VerRan
  • 浏览: 456863 次
  • 性别: Icon_minigender_1
  • 来自: 陕西.西安
社区版块
存档分类
最新评论

jsp+servlet+javabean实现分页

阅读更多
分页是被讨论的快烂了的问题,现在的分页组件页到处都是!像有名的disply EC等等.
最近有舍友问起来,我说用组件啊,不过毕业设计用那个好像不太合适!就自己写个!不过觉得不能叫组件,就是只能简单实现罢了,有时间再修改.

   1.分页bean
  1. package useBean;   
  2.   
  3. import java.sql.ResultSet;   
  4. import java.util.List;   
  5.   
  6. import bean.EvaluationBean;   
  7.   
  8. public class PageDiv {   
  9.   
  10.     /**  
  11.      * @param args  
  12.      */  
  13.     private int pageSize;   
  14.     private int pageNum;   
  15.     private int startRow;   
  16.     private int endRow;   
  17.     private int restPage;   
  18.     private int currentPage;   
  19.        
  20.     //获得当前页数用来实现翻页   
  21.     public int getCurrentPage() {   
  22.         return currentPage;   
  23.     }   
  24.     public void setCurrentPage(int currentPage) {   
  25.         this.currentPage = currentPage;   
  26.     }   
  27.     //获得最后一行   
  28.     public int getEndRow(List list) {   
  29.         if(this.getCurrentPage()==this.pageNum){   
  30.            
  31.             this.endRow=this.getStartRow()+this.getRestPage(list)-1;   
  32.         }   
  33.         else{   
  34.             this.endRow=this.getStartRow()+this.getPageSize()-1;   
  35.         }   
  36.         return endRow;   
  37.     }   
  38.     public void setEndRow(int endRow) {   
  39.         this.endRow = endRow;   
  40.     }   
  41.        
  42.     //获得总页数   
  43.     public int getPageNum(List list) {   
  44.         if(list.size()%this.getPageSize()==0){   
  45.             this.pageNum=list.size()/this.getPageSize();   
  46.         }   
  47.         else{   
  48.             this.pageNum=list.size()/this.getPageSize()+1;   
  49.         }   
  50.         return pageNum ;   
  51.     }   
  52.     public void setPageNum(int pageNum) {   
  53.         this.pageNum = pageNum;   
  54.     }   
  55.        
  56.     //设置每页显示的记录数   
  57.     public int getPageSize() {   
  58.         return pageSize;   
  59.     }   
  60.     public void setPageSize(int pageSize) {   
  61.         this.pageSize = pageSize;   
  62.     }   
  63.        
  64.     //获得起始行   
  65.     public int getStartRow() {   
  66.         startRow = (this.currentPage-1)*(this.pageNum)+1;   
  67.         return startRow;   
  68.     }   
  69.     public void setStartRow(int startRow) {   
  70.         this.startRow = startRow;   
  71.     }   
  72.        
  73.     //获得剩余页数   
  74.     public int getRestPage(List list) {   
  75.         if(list.size()%this.getPageSize()==0){   
  76.             this.restPage=0;   
  77.         }   
  78.         else{   
  79.             this.restPage=list.size()%this.getPageSize();   
  80.         }   
  81.         return restPage;   
  82.     }   
  83.     public void setRestPage(int restPage) {   
  84.         this.restPage = restPage;   
  85.     }   
  86.        
  87.     public static void main(String[] args) {   
  88.     // TODO Auto-generated method stub   
  89.     Link_db ld=new Link_db();   
  90.    EvaluationBean e=new EvaluationBean();   
  91.    List list=e.findEvByName("李建成");   
  92.    System.out.println("共"+list.size()+"条记录");   
  93.    PageDiv pd=new PageDiv();   
  94.    pd.setPageSize(5);   
  95.    pd.setCurrentPage(2);   
  96.    System.out.println("当前是"+pd.getCurrentPage()+"页");   
  97.    System.out.println("共"+pd.getPageNum(list)+"页记录");   
  98.    System.out.println("最后一页有"+pd.getRestPage(list)+"条记录");   
  99.    System.out.println("本页的第一行是"+pd.getStartRow()+"条记录");   
  100.    System.out.print("最后一行记录是第"+pd.getEndRow(list)+"条记录");   
  101.     }   
  102.   
  103.   
  104. }   


2.调用的serlet

  1. public void doGet(HttpServletRequest request, HttpServletResponse response)   
  2.             throws ServletException, IOException {   
  3.   
  4.         response.setContentType("text/html");   
  5.         PrintWriter out = response.getWriter();   
  6.         String tname="";   
  7.         List listVo=null;   
  8.         if(request.getParameter("userName")!=null){   
  9.             tname=request.getParameter("userName");   
  10.              EvaluationBean eb=new EvaluationBean();   
  11.              listVo =eb.findEvByName(tname);   
  12.         }   
  13.         if(listVo.size()>0){   
  14.             HttpSession session=request.getSession();   
  15.             session.setAttribute("tname", tname);   
  16.             session.setAttribute("list", listVo);   
  17. //       RequestDispatcher   rd   =   request.getRequestDispatcher("/WEB-INF/teacher.jsp");      
  18. //         rd.forward(request, response);   
  19.         response.sendRedirect("../teacher.jsp");   
  20.         }   
  21.         else{   
  22.              RequestDispatcher   rd   =   request.getRequestDispatcher("/WEB-INF/error.jsp");      
  23.              rd.forward(request, response);   
  24.         }   
  25.     }  

3.调用的jsp文件
  1. <body>  
  2. <form action="" name="form1">  
  3. <center>  
  4. <%    
  5. List listVo=(List)session.getAttribute("list");   
  6. String tname=(String)session.getAttribute("tname");   
  7. int  averageScore=0;   
  8.         PageDiv pd=new PageDiv();   
  9.         pd.setPageSize(5);   
  10.         int currentPage=1;   
  11.         int pageNum=pd.getPageNum(listVo);   
  12.         if(request.getParameter("currentPage")!=null){   
  13.         currentPage=new Integer(request.getParameter("currentPage")).intValue();   
  14.         }   
  15.         pd.setCurrentPage(currentPage);   
  16.             %>  
  17.   
  18.         
  19. <h2>  
  20.   <%=tname %>"老师你好!   
  21. h2>  
  22. <font style='font-size: 8pt'>  
  23. 当前是第<%=pd.getCurrentPage()%>页)   
  24. <br>  
  25. <%=pd.getPageNum(listVo) %>页记录)   
  26. <br>  
  27. (共"<%=listVo.size() %>"项记录)   
  28. font>  
  29. <table width='680' border='1' cellspacing='0' cellpadding='0' bordercolor='#B8D9F2'>  
  30. <tr>  
  31. <td><font style='font-size: 8pt'>  
  32. 编号   
  33. td>  
  34.    <td><font style='font-size: 8pt'>  
  35. 分数   
  36. td>  
  37.     <td><font style='font-size: 8pt'>  
  38. 课程名称   
  39. td>  
  40. <td><font style='font-size: 8pt'>  
  41. 教师名称   
  42.   td>  
  43. <td><font style='font-size: 8pt'>  
  44. 综合评语   
  45.    td>  
  46. tr>  
  47.             <%   
  48.             for(int i=pd.getStartRow();i<pd.getEndRow(listVo)+1;i++){   
  49.                 TeacherVo vo=(TeacherVo)listVo.get(i-1);   
  50.                 out.print("<tr>");   
  51.                 out.print("<td><font style='font-size: 8pt'>");   
  52.                 out.print(i);   
  53.                 out.print("td>");   
  54.                 out.print("<td><font style='font-size: 8pt'>");   
  55.                 out.print(vo.getAllScore());   
  56.                 out.print("td>");   
  57.                 out.print("<td><font style='font-size: 8pt'>");   
  58.                 out.print(vo.getCname());   
  59.                 out.print("td>");   
  60.                 out.print("<td><font style='font-size: 8pt'>");   
  61.                 out.print(vo.getTname());   
  62.                 out.print("td>");   
  63.                 out.print("<td><font style='font-size: 8pt'>");   
  64.                 out.print(vo.getCompre_reviews());   
  65.                 out.print("td>");   
  66.                 out.print("tr>");   
  67.             }   
  68.              %>  
  69.              <tr>  
  70. <td colspan='5' align='right'>  
  71. <font style='font-size: 8pt'><a href='teacher.jsp?currentPage=1'>第一页a>  
  72.      
  73. <% if(pd.getCurrentPage()==1){%>  
  74. <font style='font-size: 8pt'><a href='teacher.jsp?currentPage=<!---->'>上一页a>  
  75. <%} else{%>  
  76. <font style='font-size: 8pt'><a href='teachert.jsp?currentPage=<!---->'>上一页a>  
  77. <%} %>  
  78.      
  79. <% if(pd.getCurrentPage()==pd.getPageNum(listVo)){%>  
  80. <font style='font-size: 8pt'><a href='teacher.jsp?currentPage=<!---->'>下一页a>  
  81. <%} else{%>  
  82. <font style='font-size: 8pt'><a href='teacher.jsp?currentPage=<!---->'>下一页a>  
  83. <%} %>  
  84.      
  85. <font style='font-size: 8pt'><a href='teacher.jsp?currentPage=5'>最后一页a>  
  86.      
  87.   
  88. <input type="button" value="翻到" onclick="T()" class="btn6">  
  89. <input name="currentPage" size="3" value=<%=pd.getCurrentPage()%>>页   
  90. td>  
  91. tr>  
  92. table>  
  93. <br>  
  94. <script>  
  95.  function T(){   
  96.  var i=form1.currentPage.value;   
  97.  alert(i);   
  98.  var j=<%=pageNum%>;   
  99.  if((i>0)&&(i<j)){   
  100.      window.location="teacher.jsp?currentPage="+i;   
  101.  }   
  102.  else{   
  103.      window.location="teacher.jsp?currentPage="+j;   
  104.  }   
  105.  }   
  106. script>  
  107. form>  
  108.   
  109. body>  

 

分享到:
评论

相关推荐

    mysql分页 jsp实现 servlet+javabean+jsp三级架构

    MySQL分页JSP实现Servlet+JavaBean+JSP三级架构 本文档对MySQL分页技术进行了总结,讨论了在JSP实现中使用Servlet+JavaBean+JSP三级架构的分页技术的实现方式。文章首先讨论了分页技术的重要性,并且提出了一个基本...

    JSP+servlet+javabean实现购物车

    本项目以"JSP+servlet+javabean实现购物车"为主题,旨在演示如何使用这些技术来创建一个功能完整的购物车系统。下面我们将深入探讨这些知识点。 1. **JSP(JavaServer Pages)**:JSP是一种服务器端脚本语言,用于...

    jsp+servlet+javabean+jdbc+mysql实现增删改查和分页功能

    5.Servlet + JSP +JavaBean + JDBC(DBUtils)+ mysql 6.数据库 create database day19; use day19; create table t_customer( id varchar(40) primary key, username varchar(20), gender varchar(10), ...

    jsp+servlet+javabean+ajax MVC模式,增删改查,数据分页显示

    本文将深入探讨`JSP(JavaServer Pages)、Servlet、JavaBean`以及`Ajax`如何在MVC架构下实现数据的增删改查与分页显示,并涉及`SmartUpload`组件用于文件和图片的上传。 首先,`MVC`模式是一种软件设计模式,它将...

    jsp+servlet+javabean实现网上商城项目完整源码

    网上商城项目是现代电子商务的重要组成部分,本项目采用经典的JSP、Servlet和JavaBean技术进行实现,提供了完整的源码,旨在帮助开发者理解和学习如何构建一个功能完备、界面美观的网上购物平台。下面将对这个项目的...

    jsp+JavaBean+Servlet_Oracle和Mysql分页

    本项目聚焦于使用JSP、JavaBean和Servlet技术,结合Oracle与MySQL两种主流关系型数据库实现分页功能。以下将详细介绍这些技术及其在分页中的应用。 1. JSP(JavaServer Pages):JSP是一种动态网页技术,允许开发...

    JSP+Servlet+JavaBean查询分页

    "JSP+Servlet+JavaBean查询分页"的主题涵盖了如何在处理大量数据时,有效地展示信息并允许用户进行分页浏览。在这个主题中,我们将深入探讨这三个关键组件在分页查询中的应用。 首先,JSP是Java的一个标准视图技术...

    jsp+servlet+javabean实现登陆、分页功能

    在Web开发领域,Java平台提供了...以上就是使用jsp、servlet和javabean实现登录和分页功能的详细步骤和关键技术点。在实际开发中,还需要考虑安全性、异常处理、性能优化等多个方面,以确保系统的稳定性和用户体验。

    jsp+servlet+javabean 分页

    总结起来,“jsp+servlet+javabean 分页”方案是Java Web开发中常见的分页实现方式。它充分利用了JSP的视图呈现能力,Servlet的请求处理功能以及JavaBean的数据封装特性,形成了一套清晰的职责划分。这种模式不仅...

    简单的jsp+servlet+javaBean实现MVC

    **简单的jsp+servlet+javaBean实现MVC** 在Web开发中,MVC(Model-View-Controller)模式是一种广泛使用的架构模式,它将应用程序的逻辑分为三个主要组件:模型(Model)、视图(View)和控制器(Controller)。...

    jsp+javabean+servlet实现登录注册以及留言板

    jsp+javabean+servlet使用简单的MVC模式实现登录注册、留言板、分页的功能。model(javabean)层实现读写数据库,数据库名为webapp,没有密码;view(JSP)实现展示信息;controller(servlet)层联系model和view,...

    jsp+servlet+javabean简单搜索实例

    这是一个简单的搜索实例,输入学生的生日范围,在列表中显示该范围内的所有学生的信息,没有分页处理,其中jdbc部分没有做异常处理,只是想让初学者有个参考,我是从.net转java的,才学了几天,大家有什么意见或建议...

    jsp+servlet+javabean 增删改查分页

    总结起来,"jsp+servlet+javabean"的Model2模式在"增删改查分页"的应用中,涉及到JavaBean的数据封装,Servlet的控制逻辑,JSP的视图展示,以及数据库操作、请求转发、会话管理和异常处理等多个环节。理解并熟练掌握...

    jsp成绩管理系统jsp+servlet+javabean

    【JSP成绩管理系统】是一个基于Java Web技术的典型应用,主要采用了MVC(Model-View-Controller)设计模式,结合了JSP、Servlet和JavaBean组件。本系统旨在实现对学生成绩的有效管理,包括成绩录入、查询、统计等...

    JSP+SERVLET+MYSQL实现的增删改查javaweb小例子

    本项目"JSP+SERVLET+MYSQL实现的增删改查javaweb小例子"提供了一个基础的实战示例,帮助开发者了解如何将这三种技术有效地结合在一起,实现一个简单的Web应用,处理用户信息的CRUD(Create, Read, Update, Delete)...

    jsp+servlet+javabean新闻发布系统精品毕业设计

    2.新闻搜索:(可以选择分类)以新闻标题模糊搜索,有分页功能 3.热点新闻:按新闻点击率高低显示前10条左右的新闻(显示点击率) 4.最新新闻:显示最新添加的新闻(显示日期) 5.公告栏:显示公告信息 6.登录:...

    JSP+servlet+javabean留言簿系统

    本文将深入探讨一个基于JSP、Servlet和JavaBean的完整留言簿系统,包括其核心功能、实现方式以及适合的学习者群体。 首先,该留言簿系统的核心功能包括:初始化数据库、完整分页、用户注册与登录、权限管理以及DAO...

    利用servlet+jsp+javabean进行分页查询

    在Java Web开发中,"利用servlet+jsp+javabean进行分页查询"是一个常见的技术实践,主要用于处理大量数据的展示,提升用户体验并减轻服务器压力。本篇将详细讲解这个过程中的关键知识点。 首先,我们需要理解...

    JSP+JavaBean+servlet实现分页

    本主题将深入探讨如何使用JSP、JavaBean和Servlet技术来实现分页功能。这三个组件是Java Web应用程序中的核心元素,它们共同作用于服务器端,处理请求,管理业务逻辑,并向客户端展示数据。 首先,我们来看JSP...

    jsp+servlet+javabean新闻发布系统

    通过这个案例,开发者可以学习到如何在实际项目中整合JSP、Servlet和JavaBean,理解MVC(Model-View-Controller)设计模式的应用,以及如何实现数据持久化、事务管理和错误处理等核心Web开发技能。对于初学者来说,...

Global site tag (gtag.js) - Google Analytics