1、JavaBean+Servlet+jsp实现分页显示(原创)实现效果图代码:(1)JavaBeanPageDivide.javapackage com.bean;import java.io.UnsupportedEncodingException;import java.sql.*;import java.util.ArrayList;import java.util.List;import com.myutil.DBCon;public class PageDivide int sumRecord=0; /显示的总记录条数 int pageRecord=5; /每页显示的记录数 int p
2、ageNum=0; /显示的总页码数 int showPage=1; /所要显示的页码数 private Connection con=null; private PreparedStatement pstm=null; private ResultSet rs=null; private String sql=select * from category; public PageDivide() /数据库连接 con=DBCon.getConn(); try pstm=con.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,Res
3、ultSet.CONCUR_UPDATABLE);rs=pstm.executeQuery(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();this.sumRecord=this.getSumRecord();/this.setSumRecord(this.getSumRecord();this.pageNum=this.getPageNum(); /获取总记录数public int getSumRecord() try rs=pstm.executeQuery();rs.last()
4、; sumRecord=rs.getRow(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();return sumRecord;public List getData(int n)List list=new ArrayList();if(n=pageNum) n=pageNum; int begin=(n-1)*pageRecord+1;/获取第n页的第一条记录的位置值 try rs=pstm.executeQuery();rs.absolute(begin);/将结果集的游标定位到第n
5、页的第一条记录 for(int i=0;ipageRecord&(begin+i)=sumRecord;i+) /处理最后一页的特殊情况 try int id = rs.getInt(1);String categoryName = rs.getString(2);/中文处理categoryName=new String(categoryName.getBytes(ISO8859_1),GB2312) ;int parentID = rs.getInt(3);int layer = rs.getInt(4);String bz = rs.getString(5);/中文处理bz=new Str
6、ing(bz.getBytes(ISO8859_1),GB2312) ;/ 封装信息到实体中Category category = new Category();category.setId(id);category.setCategoryName(categoryName);category.setParentID(parentID);category.setLayer(layer);category.setBz(bz);list.add(category); rs.next(); catch (UnsupportedEncodingException e) / TODO Auto-gene
7、rated catch blocke.printStackTrace(); / if (rs != null)/pstm.close();/if (pstm != null)/pstm.close();/if (con != null)/con.close(); rs.close(); pstm.close(); con.close(); catch (SQLException e) / TODO Auto-generated catch blocke.printStackTrace();return list;public void setSumRecord(int sumRecord) t
8、his.sumRecord = sumRecord;public int getPageRecord() return pageRecord;public void setPageRecord(int pageRecord) this.pageRecord = pageRecord;/计算总页码数public int getPageNum() if(sumRecord%pageRecord=0) pageNum=sumRecord/pageRecord; else pageNum=sumRecord/pageRecord+1; System.out.println(总页数+pageNum +
9、总记录条数+sumRecord+ 每页显示的记录数+pageRecord);return pageNum;public void setPageNum(int pageNum) this.pageNum = pageNum;public int getShowPage() return showPage;public void setShowPage(int showPage) this.showPage = showPage; 附数据库连接类:DBCon.javapackage com.myutil;import java.sql.*;/数据库驱动加载及连接public class DBCo
10、n int x;public static Connection getConn()Connection con=null;String driver;String url;driver=com.microsoft.jdbc.sqlserver.SQLServerDriver; url=jdbc:microsoft:sqlserver:/localhost:1433;databaseName=bookManager; try Class.forName(driver);con=DriverManager.getConnection(url,sa,*); catch(Exception e) e
11、.printStackTrace(); finally return con; /数据源方式连接public static Connection getConn2()Connection con=null;String driver;String url;driver=sun.jdbc.odbc.JdbcOdbcDriver; url=jdbc:odbc:book; try Class.forName(driver);con=DriverManager.getConnection(url); catch(Exception e) e.printStackTrace(); finally ret
12、urn con; public static void main(String args)getConn2();-(2) ServletPageServlet.javapackage com.servlet;import java.io.IOException;import java.io.PrintWriter;import java.util.List;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.bean.PageDivide;public class PageServlet extends H
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1