JAVA/JSP學習系列之六(MySQL翻頁例子)

來源:互聯網
上載者:User

一、運行前準備

   下載了mysql的jdbc驅動(一個jar檔案)並載入在CLASSPATH(方法見《JAVA/JSP學習系列之一(JDK安裝) 》)

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

   建一個MySQL資料庫test

   資料庫中有一個表:note,欄位為:name(varchar)

二、下載,安裝

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

<% 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驅動程式

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

//串連資料庫

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

//建立語句對象

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

strSQL = "select name from note";

//執行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 - mysql</title>

</head>

<body>

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

<tr>

<th>姓名</th>

</tr>

<% if(intPageCount>0)

{

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

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

//顯示資料

i = 0;

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

<tr>

<td>

<%=sqlRst.getString(1)%>

</td>

</tr>

<% sqlRst.next();

i++;

}

}

%>

</table>

第<%=intPage%>頁 共<%=intPageCount%>頁

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

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

</body>

</html>

<%

//關閉結果集

sqlRst.close();

//關閉SQL語句對象

sqlStmt.close();

//關閉資料庫

sqlCon.close();

%>

三、怎麼去運行?

   見前文《JAVA/JSP學習系列之五(JDBC-ODBC翻頁例子)》。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.