程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 分頁顯示問題的解決方法(jsp,sqlserver,mysql,oracle)

分頁顯示問題的解決方法(jsp,sqlserver,mysql,oracle)

編輯:關於JSP


轉貼請注明本貼地址以及作者:與莫扎特相遇(bobrow)
同學在做jsp實現一個網上交易平台時一碰到了這個問題,我想這個問題一定具有代表性,因為分頁顯示技術要用到的地方確實很多。為了減少初學者在這方面花的時間,我在一些資料的基礎上,總結了分頁顯示的方法。
方法一:
最常用的方法,就是使用直接中數據庫中獲得所有行的結果集,然後通過定位標志,使用next()。
示例代碼(數據庫使用mysql):
//變量聲明
 Connection  sqlCon;  //數據庫連接對象
 Statement  sqlStmt;
 ResultSet  sqlRst;  //結果集對象
 String  strCon;  //數據庫連接字符串
 String  strSQL;  //SQL語句
 int  intPageSize;  //一頁顯示的記錄數
 int  intRowCount;  //記錄總行數
 int  intPageCount;  //總頁數
 int  intPage;  //待顯示頁碼
 int i;
/**
 *獲得總的記錄行數
**/
Class.forName("com.mysql.jdbc.Driver").newInstance();
strCon  =  "jdbc:mysql://localhost:3306/test";
sqlCon  =  java.sql.DriverManager.getConnection(strCon,"root","1");
sqlStmt  =  sqlCon.createStatement();
strSQL  =  "select count(*) from message";
sqlRst  =  sqlStmt.executeQuery(strSQL); //執行SQL語句並取得結果集
sqlRst.next();  //記錄集剛打開的時候,指針位於第一條記錄之前
intRowCount  =  sqlRst.getInt(1); //獲取總的數據記錄行數
sqlRst.close();  //關閉結果集
/**
 *記算總頁數
**/
intPageCount  =  (intRowCount+intPageSize-1) / intPageSize;
/**
 *獲得結果集
**/
strSQL  =  "select  time,mail,content  from message ORDER BY time DESC";

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved