JSP數據庫操數據分頁顯示

<%@ page contentType="text/html;charset=8859_1" %>

<%

//變量聲明

java.sql.Connection sqlCon; 
//數據庫連接對象

java.sql.Statement sqlStmt; 
//SQL語句對象

java.sql.ResultSet sqlRst; 
//結果集對象

java.lang.String strCon; 
//數據庫連接字符串

java.lang.String strSQL; 
//SQL語句

int intPageSize; //一頁顯示的記錄數

int intRowCount; //記錄總數

int intPageCount; //總頁數

int intPage; //待顯示頁碼

java.lang.String strPage;

int i;

//設置一頁顯示的記錄數

intPageSize 
= 2;

//取得待顯示頁碼

strPage 
= request.getParameter("page");

if(strPage==null){//表明在QueryString中沒有page這一個參數,此時顯示第一頁數據

intPage 
= 1;

}


else{//將字符串轉換成整型

intPage 
= java.lang.Integer.parseInt(strPage);

if(intPage<1) intPage = 1;

}


//裝載JDBC驅動程序

java.sql.DriverManager.registerDriver(
new oracle.jdbc.driver.OracleDriver());

//設置數據庫連接字符串

strCon 
= "jdbc:oracle:thin:@linux:1521:ora4cweb";

//連接數據庫

sqlCon 
= java.sql.DriverManager.getConnection(strCon,"hzq","hzq");

//創建一個可以滾動的只讀的SQL語句對象

sqlStmt 
= sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);

//準備SQL語句

strSQL 
= "select name,age from test";

//執行SQL語句並獲取結果集

sqlRst 
= sqlStmt.executeQuery(strSQL);

//獲取記錄總數

sqlRst.last();

intRowCount 
= sqlRst.getRow();

//記算總頁數

intPageCount 
= (intRowCount+intPageSize-1/ intPageSize;

//調整待顯示的頁碼

if(intPage>intPageCount) intPage = intPageCount;

%>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>JSP數據庫操作例程 - 數據分頁顯示 - JDBC 2.0 - Oracle</title>

</head>

<body>

<table border="1" cellspacing="0" cellpadding="0">

<tr>

<th>姓名</th>

<th>年齡</th>

</tr>

<%

if(intPageCount>0){

//將記錄指針定位到待顯示頁的第一條記錄上

sqlRst.absolute((intPage
-1* intPageSize + 1);

//顯示數據

= 0;

while(i<intPageSize && !sqlRst.isAfterLast()){

%>

<tr>

<td><%=sqlRst.getString(1)%></td>

<td><%=sqlRst.getString(2)%></td>

</tr>

<%

sqlRst.next();

i
++;

}


}


%>

</table>

<%=intPage%>&nbsp;&nbsp;共<%=intPageCount%>&nbsp;&nbsp;<%if(intPage<intPageCount){%><a href="jdbc20-oracle.jsp?page=<%=intPage+1%>">下一頁</a><%}%>&nbsp;&nbsp;<%if(intPage>1){%><a href="jdbc20-oracle.jsp?page=<%=intPage-1%>">上一頁</a><%}%>

</body>

</html>

<%

//關閉結果集

sqlRst.close();

//關閉SQL語句對象

sqlStmt.close();

//關閉數據庫

sqlCon.close();

%> 

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章