明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

JAVA/JSP學(xué)習(xí)系列之6(MySQL翻頁(yè)例子)

[摘要]一、運(yùn)行前準(zhǔn)備    下載了mysql的jdbc驅(qū)動(dòng)(一個(gè)jar文件)并加載在CLASSPATH(方法見(jiàn)《JAVA/JSP學(xué)習(xí)系列之一(JDK安裝) 》)   (如果找不到,請(qǐng)從本站下載)   建一個(gè)MySQL數(shù)據(jù)庫(kù)test    數(shù)據(jù)庫(kù)中有一個(gè)表:note,字段為:name(varchar) 二...
一、運(yùn)行前準(zhǔn)備

   下載了mysql的jdbc驅(qū)動(dòng)(一個(gè)jar文件)并加載在CLASSPATH(方法見(jiàn)《JAVA/JSP學(xué)習(xí)系列之一(JDK安裝) 》)

   (如果找不到,請(qǐng)從本站下載)

   建一個(gè)MySQL數(shù)據(jù)庫(kù)test

   數(shù)據(jù)庫(kù)中有一個(gè)表:note,字段為:name(varchar)

二、下載,安裝

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

<% java.sql.Connection sqlCon; //數(shù)據(jù)庫(kù)連接對(duì)象

java.sql.Statement sqlStmt; //SQL語(yǔ)句對(duì)象

java.sql.ResultSet sqlRst; //結(jié)果集對(duì)象

java.lang.String strCon; //數(shù)據(jù)庫(kù)連接字符串

java.lang.String strSQL; //SQL語(yǔ)句

int intPageSize; //一頁(yè)顯示的記錄數(shù)

int intRowCount; //記錄總數(shù)

int intPageCount; //總頁(yè)數(shù)

int intPage; //待顯示頁(yè)碼

java.lang.String strPage;

int i;

//設(shè)置一頁(yè)顯示的記錄數(shù)

intPageSize = 2;

//取得待顯示頁(yè)碼

strPage = request.getParameter("page");

if(strPage==null){

//表明在QueryString中沒(méi)有page這一個(gè)參數(shù),此時(shí)顯示第一頁(yè)數(shù)據(jù)

intPage = 1;

} else{

//將字符串轉(zhuǎn)換成整型

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

if(intPage<1) intPage = 1;

}

//裝載JDBC驅(qū)動(dòng)程序

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

//連接數(shù)據(jù)庫(kù)

sqlCon= java.sql.DriverManager.getConnection("jdbc:mysql://localhost/test");

//創(chuàng)建語(yǔ)句對(duì)象

sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); //執(zhí)行SQL語(yǔ)句

strSQL = "select name from note";

//執(zhí)行SQL語(yǔ)句并獲取結(jié)果集

sqlRst = sqlStmt.executeQuery(strSQL);

//獲取記錄總數(shù)

sqlRst.last();

intRowCount = sqlRst.getRow();

//記算總頁(yè)數(shù)

intPageCount = (intRowCount+intPageSize-1) / intPageSize;

//調(diào)整待顯示的頁(yè)碼

if(intPage>intPageCount) intPage = intPageCount;

%>

<html>

<head>

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

<title>JSP數(shù)據(jù)庫(kù)操作例程 - 數(shù)據(jù)分頁(yè)顯示 - JDBC 2.0 - mysql</title>

</head>

<body>

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

<tr>

<th>姓名</th>

</tr>

<% if(intPageCount>0)

{

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

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

//顯示數(shù)據(jù)

i = 0;

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

<tr>

<td>

<%=sqlRst.getString(1)%>

</td>

</tr>

<% sqlRst.next();

i++;

}

}

%>

</table>

第<%=intPage%>頁(yè)  共<%=intPageCount%>頁(yè)  

<%if(intPage<intPageCount){%><a href="mysqlpage.jsp?page=<%=intPage+1%>">下一頁(yè)</a><%}%>

  <%if(intPage>1){%><a href="mysqlpage.jsp?page=<%=intPage-1%>">上一頁(yè)</a><%}%>

</body>

</html>

<%

//關(guān)閉結(jié)果集

sqlRst.close();

//關(guān)閉SQL語(yǔ)句對(duì)象

sqlStmt.close();

//關(guān)閉數(shù)據(jù)庫(kù)

sqlCon.close();

%>

三、怎么去運(yùn)行?

   見(jiàn)前文《JAVA/JSP學(xué)習(xí)系列之五(JDBC-ODBC翻頁(yè)例子)》。