萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> jsp編程 >> servlet分頁代碼示例

servlet分頁代碼示例

 本文介紹了servlet分頁代碼實現,采用Oracle數據庫,獲取SCOTT用戶EMP表中的數據,分頁實現步驟看下面代碼

1.首先創建一個對象 UserData,用以保存從數據庫中獲取的數據。    代碼如下: package com.tool;   import java.math.BigDecimal; import java.util.Date;   /**  * Created by lx_sunwei on 14-1-6.  */ public class UserData {       /**      * EMP表中的數據屬性      */     private String ename;     private String job;     private BigDecimal empno;     private BigDecimal mgr;     private Date hireDate;     private BigDecimal sal;     private BigDecimal comm;     private BigDecimal deptno;       public BigDecimal getEmpno() {         return empno;     }       public void setEmpno(BigDecimal empno) {         this.empno = empno;     }       public BigDecimal getMgr() {         return mgr;     }       public void setMgr(BigDecimal mgr) {         this.mgr = mgr;     }       public Date getHireDate() {         return hireDate;     }       public void setHireDate(Date hireDate) {         this.hireDate = hireDate;     }       public BigDecimal getSal() {         return sal;     }       public void setSal(BigDecimal sal) {         this.sal = sal;     }       public BigDecimal getComm() {         return comm;     }       public void setComm(BigDecimal comm) {         this.comm = comm;     }       public BigDecimal getDeptno() {         return deptno;     }       public void setDeptno(BigDecimal deptno) {         this.deptno = deptno;     }       public String getEname() {         return ename;     }       public void setEname(String ename) {         this.ename = ename;     }       public String getJob() {         return job;     }       public void setJob(String job) {         this.job = job;     } }       2.創建一個 DBHelper 對象用以與數據庫進行交互   代碼如下: package com.dao;   import com.tool.UserData;   import java.math.BigDecimal; import java.sql.*; import java.util.*; import java.util.Date;   /**  * Created by lx_sunwei on 14-1-6.  */ public class DBHelper {       Connection conn;  //數據庫連接對象     PreparedStatement pt;  //SQL語句預處理對象     ResultSet rs;  //結果集對象       public  DBHelper(){         try {             Class.forName("oracle.jdbc.driver.OracleDriver");  //裝載驅動         } catch (ClassNotFoundException e) {             e.printStackTrace();         }     }       /**      * 獲取當前頁的數據      * @param curPage      * @param rowsPerPage      * @return      */     public List<UserData> getData(int curPage, int rowsPerPage) {           List<UserData> dataList = new ArrayList<>();         String url = "jdbc:oracle:thin:@localhost:1521:orcl";         try {             conn = DriverManager.getConnection(url,"scott","tiger");             String sql = "select * from emp where rownum <= ((? - 1) * "+rowsPerPage+" + "+rowsPerPage+") minus " +                     " select * from emp where rownum <= (? - 1) * "+rowsPerPage+" ";             pt = conn.prepareStatement(sql);             pt.setInt(1,curPage);             pt.setInt(2,curPage);             rs = pt.executeQuery();             while (rs.next()){                 /**                  * 從結果集中取得數據                  */                 UserData userData = new UserData();                 BigDecimal empno = rs.getBigDecimal("empno");                 String ename = rs.getString("ename");                 String job = rs.getString("job");                 BigDecimal mgr = rs.getBigDecimal("mgr");                 Date hireDate = rs.getDate("hiredate");                 BigDecimal sal = rs.getBigDecimal("sal");                 BigDecimal comm = rs.getBigDecimal("comm");                 BigDecimal deptno = rs.getBigDecimal("deptno");                 /**                  * 設置對象屬性                  */                 userData.setEmpno(empno);                 userData.setEname(ename);                 userData.setJob(job);                 userData.setMgr(mgr);                 userData.setHireDate(hireDate);                 userData.setSal(sal);                 userData.setComm(comm);                 userData.setDeptno(deptno);                 dataList.add(userData);  //把對象添加集合中             }             rs.close();             pt.close();             conn.close();         } catch (SQLException e) {             e.printStackTrace();         }         return dataList;     }       /**      * 返回總頁數      * @return      */     public int getMaxPage(int rowsPerPage) {         int maxPage;         int maxRowCount = 0;         String url = "jdbc:oracle:thin:@localhost:1521:orcl";         try {             conn = DriverManager.getConnection(url,"scott","tiger");  //創建數據庫連接       &nb
copyright © 萬盛學電腦網 all rights reserved