青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

大龍的博客

常用鏈接

統計

最新評論

jsp+oracle實現簡單的分頁

oracle腳本:drop table t_student cascade constraints;
Java代碼  收藏代碼
  1. /*==============================================================*/  
  2. /* Table: t_student                                           */  
  3. /*==============================================================*/  
  4. create table t_student  (  
  5.    s_id              char(10)                        not null,  
  6.    s_name             varchar2(20)                    not null,  
  7.    s_age              char(2)                         not null,  
  8.    s_sex              char(2)                         not null,  
  9.    s_class            varchar2(20),  
  10.    constraint PK_T_STUDENT primary key (s_id)  
  11. );  
  12.   
  13. insert into t_student values('0001','張三','20','男','08級二班') ;  
  14. insert into t_student values('0002','李四','21','女','08級二班') ;  
  15. insert into t_student values('0003','王五','20','男','08級二班') ;  
  16. insert into t_student values('0004','趙柳','20','女','08級一班') ;  
  17. insert into t_student values('0005','楊梅','21','男','08級二班') ;  
  18. insert into t_student values('0006','劉海','23','女','08級一班') ;  
  19. insert into t_student values('0007','孫江','20','女','08級一班') ;  
  20. insert into t_student values('0008','蘇燦','22','男','08級二班') ;  
  21. insert into t_student values('0009','王霞','23','女','08級一班') ;  
  22. insert into t_student values('0010','王猛','22','男','08級二班') ;  
  23. insert into t_student values('0011','張相','22','女','08級一班') ;  
  24. insert into t_student values('0012','香橙','20','女','08級一班') ;  
  25. insert into t_student values('0013','李心','21','女','08級二班') ;  
  26. insert into t_student values('0014','張強','20','男','08級一班') ;  
  27. insert into t_student values('0015','趙琳','21','女','08級一班') ;  
  28. insert into t_student values('0016','劉達','21','男','08級二班') ;  
  29. insert into t_student values('0017','蘇惠','20','女','08級二班') ;  
  30. insert into t_student values('0018','賈瑞','20','女','08級一班') ;  
  31. insert into t_student values('0019','谷瑞坤','22','男','08級二班') ;  
  32. insert into t_student values('0020','祥還','21','男','08級一班') ;  
  33. commit;  

  采用單利模式創建DbUtil類獲得Connection對象:package com.stmcc.test.util;

Java代碼  收藏代碼
  1. import java.sql.*;  
  2.   
  3. public class DbUtil {  
  4.   
  5.     private static final String driver = "oracle.jdbc.driver.OracleDriver" ;  
  6.     private static final String url = "jdbc:oracle:thin:@10.10.10.2:1521:orcl" ;  
  7.     private static final String username = "test" ;  
  8.     private static final String password = "test" ;  
  9.     public static Connection getConnection(){  
  10.         Connection conn = null ;  
  11.         try{  
  12.             Class.forName(driver) ;  
  13.             conn = DriverManager.getConnection(url, username, password) ;  
  14.         }catch(Exception e){  
  15.             e.printStackTrace() ;  
  16.         }  
  17.         return conn ;  
  18.     }  
  19.   
  20.     public static void close(Connection conn) {  
  21.         if (conn != null) {  
  22.             try {  
  23.                 conn.close();  
  24.             } catch (SQLException e) {  
  25.                 e.printStackTrace();  
  26.             }  
  27.         }  
  28.     }  
  29.       
  30.     public static void close(PreparedStatement pstmt) {  
  31.         if (pstmt != null) {  
  32.             try {  
  33.                 pstmt.close();  
  34.             } catch (SQLException e) {  
  35.                 e.printStackTrace();  
  36.             }  
  37.         }  
  38.     }  
  39.       
  40.     public static void close(ResultSet rs ) {  
  41.         if (rs != null) {  
  42.             try {  
  43.                 rs.close();  
  44.             } catch (SQLException e) {  
  45.                 e.printStackTrace();  
  46.             }  
  47.         }  
  48.     }  
  49.     public static void main(String[] args) {  
  50.         System.out.println(DbUtil.getConnection());  
  51.     }  
  52. }  

 創建學生實體類:package com.stmcc.test;

Java代碼  收藏代碼
  1. public class Student {  
  2.   
  3.     private String s_id ;  
  4.     private String s_name ;  
  5.     private String s_age ;  
  6.     private String s_sex ;  
  7.     private String s_class ;  
  8.     public String getS_id() {  
  9.         return s_id;  
  10.     }  
  11.     public void setS_id(String s_id) {  
  12.         this.s_id = s_id;  
  13.     }  
  14.     public String getS_name() {  
  15.         return s_name;  
  16.     }  
  17.     public void setS_name(String s_name) {  
  18.         this.s_name = s_name;  
  19.     }  
  20.     public String getS_age() {  
  21.         return s_age;  
  22.     }  
  23.     public void setS_age(String s_age) {  
  24.         this.s_age = s_age;  
  25.     }  
  26.     public String getS_sex() {  
  27.         return s_sex;  
  28.     }  
  29.     public void setS_sex(String s_sex) {  
  30.         this.s_sex = s_sex;  
  31.     }  
  32.     public String getS_class() {  
  33.         return s_class;  
  34.     }  
  35.     public void setS_class(String s_class) {  
  36.         this.s_class = s_class;  
  37.     }  
  38. }  

  創建學生管理類:package com.stmcc.test.util;

Java代碼  收藏代碼
  1. import com.stmcc.test.*;  
  2. import java.sql.* ;  
  3. import java.util.*;   
  4. public class StuManager {  
  5.   
  6.     private static StuManager instance = new StuManager() ;  
  7.       
  8.     private StuManager(){} ;  
  9.       
  10.     public static StuManager getInstance(){  
  11.         return instance ;  
  12.     }  
  13. //  oracle實現分頁的查詢語句  
  14. //  select s_id, s_name, s_age, s_sex, s_class  
  15. //  from  
  16. //  (  
  17. //    select rownum rn, s_id, s_name, s_age, s_sex, s_class  
  18. //    from  
  19. //      (select s_id, s_name, s_age, s_sex, s_class   
  20. //       from t_student order by s_id  
  21. //      )where rownum <= 10  
  22. //  )where rn > 5 ;  
  23.     public PageModel findStudentList(int pageNo, int pageSize){  
  24.         PageModel pageModel = null ;  
  25.         StringBuffer sql = new StringBuffer() ;  
  26.         sql.append("select s_id, s_name, s_age, s_sex, s_class ")  
  27.             .append("from")  
  28.             .append("(")  
  29.             .append("select rownum rn, s_id, s_name, s_age, s_sex, s_class ")  
  30.             .append("from")  
  31.             .append("(")  
  32.             .append("select s_id, s_name, s_age, s_sex, s_class ")  
  33.             .append("from t_student order by s_id")  
  34.             .append(")")  
  35.             .append("where rownum <= ?")  
  36.             .append(")")  
  37.             .append("where rn > ? ");  
  38.         Connection conn = null ;  
  39.         PreparedStatement pstmt = null ;  
  40.         ResultSet rs = null ;  
  41.         try{  
  42.             conn = DbUtil.getConnection() ;  
  43.             pstmt = conn.prepareStatement(sql.toString()) ;  
  44.             pstmt.setInt(1, pageNo*pageSize) ;  
  45.             pstmt.setInt(2, (pageNo - 1)*pageSize) ;  
  46.             rs = pstmt.executeQuery() ;  
  47.             List<Student> stuList = new ArrayList<Student>() ;  
  48.             while (rs.next()){  
  49.                 Student stu = new Student() ;  
  50.                 stu.setS_id(rs.getString("s_id")) ;  
  51.                 stu.setS_name(rs.getString("s_name")) ;  
  52.                 stu.setS_age(rs.getString("s_age")) ;  
  53.                 stu.setS_sex(rs.getString("s_sex")) ;  
  54.                 stu.setS_class(rs.getString("s_class")) ;  
  55.                 stuList.add(stu) ;  
  56.             }  
  57.             pageModel = new PageModel() ;  
  58.             pageModel.setList(stuList) ;  
  59.             pageModel.setTotalRecords(getTotalRecords(conn)) ;  
  60.             pageModel.setPageSize(pageSize);  
  61.             pageModel.setPageNo(pageNo);  
  62.         }catch(Exception e){  
  63.             e.printStackTrace() ;  
  64.         }finally{  
  65.             DbUtil.close(rs) ;  
  66.             DbUtil.close(pstmt) ;  
  67.             DbUtil.close(conn) ;  
  68.         }  
  69.         return pageModel ;  
  70.     }  
  71.     /** 
  72.      * 取得總記錄數 
  73.      * @param conn 
  74.      * @return 
  75.      */  
  76.     private int getTotalRecords(Connection conn)   
  77.     throws SQLException {  
  78.         String sql = "select count(*) from t_student";  
  79.         PreparedStatement pstmt = null;  
  80.         ResultSet rs = null;  
  81.         int count = 0;  
  82.         try {  
  83.             pstmt = conn.prepareStatement(sql);  
  84.             rs = pstmt.executeQuery();  
  85.             rs.next();  
  86.             count = rs.getInt(1);  
  87.         }finally {  
  88.             DbUtil.close(rs);  
  89.             DbUtil.close(pstmt);  
  90.         }  
  91.         return count;  
  92.     }  
  93. }  

 創建分頁模型類實現業務邏輯:package com.stmcc.test.util;

Java代碼  收藏代碼
  1. import java.util.* ;  
  2. public class PageModel {  
  3.   
  4.     //結果集  
  5.     private List list ;  
  6.       
  7.     //查詢總記錄數  
  8.     private int totalRecords ;  
  9.       
  10.     //每頁多少條數據  
  11.     private int pageSize ;  
  12.       
  13.     //第幾頁  
  14.     private int pageNo ;  
  15.       
  16.     /** 
  17.      * 總頁數 
  18.      * @return 
  19.      */  
  20.     public int getTotalPages(){  
  21.         return (totalRecords + pageSize -1) / pageSize ;  
  22.     }  
  23.       
  24.     /** 
  25.      * 取得首頁 
  26.      * @return 
  27.      */  
  28.     public int getTopPageNo(){  
  29.         return 1 ;  
  30.     }  
  31.       
  32.     /** 
  33.      * 上一頁 
  34.      * @return 
  35.      */  
  36.     public int getPreviousPageNo(){  
  37.         if(pageNo <= 1){  
  38.             return 1 ;  
  39.         }  
  40.         return pageNo - 1 ;  
  41.     }  
  42.       
  43.     /** 
  44.      * 下一頁 
  45.      * @return 
  46.      */  
  47.     public int getNextPageNo(){  
  48.         if(pageNo >= getBottomPageNo()){  
  49.             return getBottomPageNo() ;  
  50.         }  
  51.         return pageNo + 1 ;  
  52.     }  
  53.       
  54.     /** 
  55.      * 取得尾頁 
  56.      * @return 
  57.      */  
  58.     public int getBottomPageNo(){  
  59.         return getTotalPages() ;  
  60.     }  
  61.   
  62.     public List getList() {  
  63.         return list;  
  64.     }  
  65.   
  66.     public void setList(List list) {  
  67.         this.list = list;  
  68.     }  
  69.   
  70.     public int getTotalRecords() {  
  71.         return totalRecords;  
  72.     }  
  73.   
  74.     public void setTotalRecords(int totalRecords) {  
  75.         this.totalRecords = totalRecords;  
  76.     }  
  77.   
  78.     public int getPageSize() {  
  79.         return pageSize;  
  80.     }  
  81.   
  82.     public void setPageSize(int pageSize) {  
  83.         this.pageSize = pageSize;  
  84.     }  
  85.   
  86.     public int getPageNo() {  
  87.         return pageNo;  
  88.     }  
  89.   
  90.     public void setPageNo(int pageNo) {  
  91.         this.pageNo = pageNo;  
  92.     }  
  93. }  

 jsp頁面:<%@ page contentType="text/html" pageEncoding="GBK"%>

Java代碼  收藏代碼
  1. <%@ page import="com.stmcc.test.util.*"%>  
  2. <%@ page import="com.stmcc.test.*"%>  
  3. <%@ page import="java.sql.*"%>  
  4. <%@ page import="java.util.*"%>  
  5. <html>  
  6. <head><title>分頁展示</title></head>  
  7. <%  
  8.     int pageNo = 1 ;  
  9.     int pageSize = 5 ;  
  10.     String pageNoString = request.getParameter("pageNo") ;  
  11.     if(pageNoString != null){  
  12.         pageNo = Integer.parseInt(pageNoString) ;  
  13.     }  
  14.     PageModel pageModel = StuManager.getInstance().findStudentList(pageNo,pageSize) ;  
  15. %>  
  16. <script type="text/javaScript">  
  17.     function topPage() {  
  18.         window.self.location = "student.jsp?pageNo=<%=pageModel.getTopPageNo()%>";  
  19.     }  
  20.       
  21.     function previousPage() {  
  22.         window.self.location = "student.jsp?pageNo=<%=pageModel.getPreviousPageNo()%>";  
  23.     }     
  24.       
  25.     function nextPage() {  
  26.         window.self.location = "student.jsp?pageNo=<%=pageModel.getNextPageNo()%>";  
  27.     }  
  28.       
  29.     function bottomPage() {  
  30.         window.self.location = "student.jsp?pageNo=<%=pageModel.getBottomPageNo()%>";  
  31.     }  
  32. </script>  
  33. <body>  
  34. <center>  
  35.   <table border="1">  
  36.   <tr>  
  37.     <td>學生編號</td>  
  38.     <td>學生姓名</td>  
  39.     <td>學生年齡</td>  
  40.     <td>學生性別</td>  
  41.     <td>學生班級</td>  
  42.   </tr>  
  43.   <%  
  44.     List stuList = pageModel.getList() ;  
  45.     for(Iterator<Student> iter = stuList.iterator(); iter.hasNext();){  
  46.         Student stu = iter.next() ;  
  47.   %>  
  48.   <tr>  
  49.     <td><%=stu.getS_id() %></td>  
  50.     <td><%=stu.getS_name() %></td>  
  51.     <td><%=stu.getS_age() %></td>  
  52.     <td><%=stu.getS_sex() %></td>  
  53.     <td><%=stu.getS_class() %></td>  
  54.   </tr>  
  55.   <%  
  56.     }  
  57.   %>  
  58.   <tr><td colspan="5">  
  59.       共&nbsp;<%=pageModel.getTotalPages() %>&nbsp;頁&nbsp;&nbsp;&nbsp;&nbsp;  
  60.       當前第&nbsp;<%=pageModel.getPageNo() %>頁&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  
  61.   <input type="button" value="首頁" onClick="topPage()">  
  62.   <input type="button" value="上一頁" onClick="previousPage()">  
  63.   <input type="button" value="下一頁" onClick="nextPage()">  
  64.   <input type="button" value="尾頁" onClick="bottomPage()">  
  65.   </td></tr>  
  66.   </table>  
  67. </center>  
  68. </body>  
  69. </html>  

posted on 2011-09-07 02:21 大龍 閱讀(480) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            91久久精品一区二区三区| 亚洲欧美在线一区二区| 欧美一区二区| 一本久道综合久久精品| 欧美护士18xxxxhd| 麻豆成人av| 久久精品国语| 久久九九国产精品怡红院| 欧美一级二级三级蜜桃| 亚洲欧美日韩精品综合在线观看| 亚洲一区二区黄色| 久久精品国产在热久久| 欧美xart系列高清| 欧美日在线观看| 国产专区综合网| av不卡在线| 久久久五月天| 亚洲国产99精品国自产| 99国产精品久久久久久久成人热| 亚洲欧美乱综合| 欧美经典一区二区三区| 国产日韩欧美精品| 一区二区日韩伦理片| 久久躁狠狠躁夜夜爽| av成人免费观看| 美女被久久久| 国产亚洲精品7777| 亚洲视频axxx| 亚洲电影在线观看| 亚洲欧美日韩人成在线播放| 亚洲激情视频在线观看| 欧美日韩一级黄| 红桃视频亚洲| 亚洲一区三区电影在线观看| 久久综合伊人77777| 一区二区三区国产在线| 欧美jizz19hd性欧美| 国产日产高清欧美一区二区三区| 亚洲精选成人| 欧美a级片网| 欧美亚洲三区| 国产精品国产三级国产普通话99 | 欧美99在线视频观看| 99视频有精品| 欧美另类综合| 亚洲精品网站在线播放gif| 欧美有码在线视频| 亚洲一区二区成人| 欧美午夜a级限制福利片| 亚洲国产一二三| 免费的成人av| 久久久久久日产精品| 国产一区二区看久久| 欧美一级专区| 午夜精品免费在线| 国产精品久久久亚洲一区| 亚洲视屏一区| 亚洲视频欧美视频| 国产精品久久久久久久久久免费| 一本色道久久综合一区| 亚洲欧洲一区二区三区| 欧美极品aⅴ影院| 一区二区三区四区在线| a91a精品视频在线观看| 国产精品美女久久久久久2018 | 国产精品美女视频网站| 亚洲永久精品国产| 亚洲性感美女99在线| 国产精品尤物| 久久久一二三| 久久人人爽爽爽人久久久| 亚洲缚视频在线观看| 亚洲国产日韩欧美| 欧美丝袜一区二区| 欧美一级欧美一级在线播放| 性伦欧美刺激片在线观看| 国产一区在线免费观看| 欧美国产视频日韩| 欧美日韩另类丝袜其他| 欧美中文字幕在线| 久久亚洲色图| 中文国产成人精品久久一| 国产精品99久久久久久www| 国产精品视频最多的网站| 国产精品爱啪在线线免费观看| 欧美日韩伦理在线免费| 亚洲图片自拍偷拍| 亚洲欧美一区二区激情| 狠狠色丁香婷综合久久| 欧美好吊妞视频| 亚洲图片欧洲图片日韩av| 亚洲一区二区三| 影音先锋久久| 日韩视频精品在线| 国产日本欧美视频| 欧美国产日韩视频| 国产精品网站在线观看| 欧美激情第10页| 国产精品久久久久秋霞鲁丝| 久久久精品国产免大香伊| 欧美搞黄网站| 久久精精品视频| 欧美日韩一区在线观看视频| 巨乳诱惑日韩免费av| 欧美视频日韩视频| 欧美v日韩v国产v| 国产精品日韩欧美一区二区| 欧美顶级艳妇交换群宴| 欧美性片在线观看| 亚洲国产成人一区| 精品999在线观看| 亚洲一区一卡| 中文精品视频| 欧美高清成人| 美女黄色成人网| 国产亚洲欧洲一区高清在线观看 | 久久在线免费| 午夜天堂精品久久久久| 欧美1区2区3区| 噜噜噜噜噜久久久久久91| 欧美激情国产高清| 国产视频精品xxxx| 亚洲午夜精品国产| 日韩五码在线| 欧美jizz19性欧美| 欧美va亚洲va国产综合| 国产综合精品| 欧美一区二区三区在线视频| 性欧美暴力猛交另类hd| 国产精品电影观看| 一本色道久久综合亚洲精品高清| 亚洲裸体在线观看| 欧美国产欧美综合| 亚洲电影视频在线| 亚洲精品欧美激情| 欧美激情综合在线| 亚洲另类视频| 亚洲一区在线播放| 国产精品激情电影| 亚洲一区二区三区欧美| 亚洲女同同性videoxma| 欧美午夜寂寞影院| 亚洲天堂av电影| 午夜视频在线观看一区二区三区 | 国产精品久久久久毛片软件 | 日韩亚洲欧美成人一区| 久久免费黄色| 欧美国产精品劲爆| 亚洲国产影院| 欧美另类在线观看| 一本久道久久综合中文字幕| 亚洲图片欧洲图片av| 欧美特黄一区| 亚洲欧美中文日韩v在线观看| 欧美一区二区三区免费看| 国产亚洲aⅴaaaaaa毛片| 久久精品日产第一区二区| 欧美成人精品不卡视频在线观看| 亚洲精品乱码视频| 国产精品网曝门| 久久综合一区二区三区| 日韩午夜在线电影| 久久久综合网站| 亚洲精品孕妇| 国产精品美女主播| 久久久国产视频91| 亚洲免费av电影| 久久黄色网页| 亚洲美女精品久久| 国产精品一区二区三区四区五区 | 欧美中文在线视频| 欧美激情一区二区| 亚洲视频福利| 精品动漫3d一区二区三区免费版| 欧美大片在线观看一区| 亚洲综合日本| 欧美好吊妞视频| 欧美在线免费视频| 亚洲乱码国产乱码精品精| 国产精品视频久久| 欧美成人国产一区二区 | 裸体一区二区三区| 亚洲性夜色噜噜噜7777| 欧美成人日韩| 欧美在线视频免费观看| 亚洲日本国产| 国模 一区 二区 三区| 欧美日韩亚洲国产精品| 久久久久久久成人| 亚洲一级免费视频| 亚洲日本在线视频观看| 久久亚洲精品一区| 午夜精品在线| 夜夜嗨av一区二区三区四区| 国产一区二区三区的电影| 国产精品福利在线观看| 欧美成人午夜视频| 久久影院亚洲| 久久亚洲精品欧美| 欧美一级久久久久久久大片|