JSP初級教程之跟我學JSP(五)_JSP教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
推薦:JSP初級教程之跟我學JSP(四)第四章我的第一個 Javabean 程序 一、先看看如何取當前時間并顯示的代碼: ------------------------------------------------ % java.text.SimpleDateFormatformatter=newjava.text.SimpleDateFormat(yyyy-MM-ddHH:mm:ss); java.util.DatecurrentTime=ne
第五章 jsp分頁功能的實現經過上面的學習我漸漸熟悉了對數據庫的操作,留言板的功能也不斷的完善,隨著留言的增加信息的目錄越來越長了,現在需要實現一個分頁功能了,我嘗試自己解決這個問題。
1、我應該把它的關鍵部分封裝成一個bean,使它盡可能的能夠重用;
2、通過資料了解有兩種數據庫查詢方案:一、一次取得所有資料,然后在指定的頁顯示指定的資料;二、分次查詢數據庫,每次只獲得本頁的數據。考慮到數據庫中記錄數越多,方案一所占的服務器資源就越多(將所有的記錄都放到內存中,假如有50萬條記錄的話……@$^*%@#),所以應該采用方案二;
3、首先要知道目標數據庫里共有多少條記錄(select count(*) from 表名),然后確定每頁顯示多少條記錄,再根據它計算一共分多少頁(最大頁數)顯示,這部分由bean1(在我的代碼里就隨便起個名叫PageBean)實現;獲取當前要顯示第幾頁的請求,查詢本頁要顯示哪些條記錄,將每條記錄的內容作為一組數據返回給顯示頁面,這部分由bean2(CountBean)實現;顯示頁面(.jsp文件)顯示各條記錄的內容。
到這里我發現有兩個難點:(1)查詢從第m條到第n條記錄的SQL語句不會寫,通過在網上查找資料,這個問題得到解決;(2)bean2返回給顯示頁面的值是個二維的數組,這個數組怎么傳呢?于是不得不上網翻書查找資料,最終發現由Vector(向量)來解決,由于沒有工具書,無法針對Vector進一步學習,就只好分析代碼,好在最后分析明白了——到目前為止,也只是明白了那段代碼,仍然無法做到能夠應用。
下面是這三個文件的代碼:
-----------------------------------------PageBean.java-----------------------------------------------
//該bean用于實現分頁功能時得到總的記錄數和最大的頁數
package ringz.javabeans;
import java.io.*;
import java.sql.*;
public class PageBean
{
private int maxRowCount;//最大記錄數
private int onePageRowCount;//每頁顯示的記錄數
private int maxPageCount;//最大頁數
private String classforname;
private String servanddb;
private String sql;
//
//得到關于目標數據庫的搜索條件
public void setSql(String s1,String s2,String sql)
{
this.classforname=s1;
this.servanddb=s2;
this.sql=sql;
}
//得到onePageRowCount
public void setOnePageRowCount(int counts)
{
onePageRowCount=counts;
}
//計算maxRowCount并返回
public int getMaxRowCount()throws Exception
{
try
{
Class.forName(classforname);//載入驅動程式類別
Connection con=DriverManager.getConnection(servanddb);//建立數據庫連接
Statement stmt=con.createStatement();//建立Statement變量
ResultSet rs=stmt.executeQuery(sql);
if (rs.next())
maxRowCount=rs.getInt(1);
rs.close();
stmt.close();
con.close();
return maxRowCount;
}//try
catch (Exception e)
{
e.printStackTrace();
throw e;
}
}//getMaxRowCount()
分享:JSP初級教程之跟我學JSP(三)第三章連接數據庫 接著我想做一個 jsp 的留言板之類的東西:有登錄驗證、注冊、發表文章、瀏覽文章、管理文章、管理用戶等這些功能。 首先,登錄驗證這個不難,但是有個問題:需要連接數據庫了。于是我開始查找資料,并安裝了 Oracle 數據庫(對于Oracle數據
相關JSP教程:
- jsp response.sendRedirect不跳轉的原因分析及解決
- JSP指令元素(page指令/include指令/taglib指令)復習整理
- JSP腳本元素和注釋復習總結示例
- JSP FusionCharts Free顯示圖表 具體實現
- 網頁模板:關于jsp頁面使用jstl的異常分析
- JSP頁面中文傳遞參數使用escape編碼
- 基于jsp:included的使用與jsp:param亂碼的解決方法
- Java Web項目中連接Access數據庫的配置方法
- JDBC連接Access數據庫的幾種方式介紹
- 網站圖片路徑的問題:絕對路徑/虛擬路徑
- (jsp/html)網頁上嵌入播放器(常用播放器代碼整理)
- jsp下顯示中文文件名及絕對路徑下的圖片解決方法
- 相關鏈接:
- 教程說明:
JSP教程-JSP初級教程之跟我學JSP(五)
。