JSP通用查詢處理與分頁顯示__JSP

來源:互聯網
上載者:User

 

JSP通用查詢處理與分頁顯示

 

鐵樹

tieshu

  

2006年4月2日星期日

 

(註:涉及的源碼可通過Email:rngguliu@163.com擷取)

1 基本思想

鑒於JSP開發中多次用到查詢與分頁顯示的功能,故將查詢處理及分頁顯示進行了統一設計和功能封裝,在一定程度上加快了開發進程,提高了編碼效率,減少了重複性勞動,提高了代碼重用度。

流程如下。

       由上述流程可以看出,整個查詢及分頁顯示只檢索一次資料庫,也就是只建立一次資料庫連接。翻頁顯示時,不再進行查詢。從一定程度上減輕了系統的負擔,同時翻頁速度也得到提高。

本設計的注意點是,對於session的變數名的處理,不要重複,以免發生混亂,約定採用”表名”和相應操作的組合,見樣本程式。 2 兩個重要的類

       這兩個類的調用介面及易掌握,只需簡單的調用幾個方法,即可實現完美的分頁顯示。

       這兩個類相對獨立而實用,可單獨在其他程式中進行調用。如果將這二者進行結合,可實現任意對象集的完美分頁顯示。 2.1 Page分頁處理類

為了簡化分頁功能的處理,特將分頁有關的處理封裝在此類中。輸入參數為某一資料集(或對象集合)、每頁顯示的記錄數及要顯示的頁碼,返回要顯示的記錄集。

建構函式概覽

Page(java.util.List data, int itemsPerPage)   建構函式1,List資料集 設定資料集和每頁顯示多少個記錄 同時計算出總頁數和總記錄數,對當前頁碼置1

 

Page(java.lang.Object data, int itemsPerPage)  建構函式3,Object資料集 設定資料集和每頁顯示多少個記錄 同時計算出總頁數和總記錄數,對當前頁碼置1

 

Page(java.util.Vector data, int itemsPerPage)  建構函式2,Vector資料集 設定資料集和每頁顯示多少個記錄 同時計算出總頁數和總記錄數,對當前頁碼置1

 

 

方法概覽

 String

getAllFoot(String url, String pagePara) 
           //取得分頁的頁尾資訊2,顯示無效連結

 String

getAllFoot(String url, String pagePara, String otherPara)   //取得分頁的頁尾資訊3,顯示無效連結,處理關聯子表的情況

 int

getCurrentRecord()//擷取目前記錄編號         

 String

getValidFoot(String url, String pagePara) 
           //取得分頁的頁尾資訊1,自動隱藏無效連結

 String

getValidFoot(String url, String pagePara, String otherPara) 
           //取得分頁的頁尾資訊1,自動隱藏無效連結

 java.util.List

showPage(String pageNum) // 根據頁碼找出要顯示的資料集

 

建構函式細節

Page

public Page(java.util.List data, int itemsPerPage)

建構函式1,List資料集 設定資料集和每頁顯示多少個記錄同時計算出總頁數和總記錄數,對當前頁碼置1

參數:

data - 要顯示的資料集

itemsPerPage - 每頁顯示多少個記錄

Page

public Page(java.util.Vector data, int itemsPerPage)

建構函式2,Vector資料集 設定資料集和每頁顯示多少個記錄同時計算出總頁數和總記錄數,對當前頁碼置1

參數:

data - 要顯示的資料集

itemsPerPage - 每頁顯示多少個記錄

Page

public Page(java.lang.Object data, int itemsPerPage)

建構函式3,Object資料集 設定資料集和每頁顯示多少個記錄同時計算出總頁數和總記錄數,對當前頁碼置1

參數:

data - 要顯示的資料集

itemsPerPage - 每頁顯示多少個記錄

方法細節

getCurrentRecord

public int getCurrentRecord()

傳回值: 目前記錄編號。

showPage

public java.util.List showPage(String pageNum)

根據頁碼找出要顯示的資料集

參數:

pageNum - 指定的頁碼

傳回值: 要顯示的資料集

getValidFoot

public String getValidFoot(String url,  String pagePara)

 //取得分頁的頁尾資訊1,自動隱藏無效連結

傳回值: 分頁的頁尾資訊

getValidFoot

public String getValidFoot(String url, String pagePara, String otherPara)

 //取得分頁的頁尾資訊1,自動隱藏無效連結

傳回值: 分頁的頁尾資訊

getAllFoot

public String getAllFoot(String url, String pagePara)

 //取得分頁的頁尾資訊2,顯示無效連結

傳回值: 分頁的頁尾資訊

getAllFoot

public String getAllFoot(String url, String pagePara, String otherPara)

 //取得分頁的頁尾資訊3,顯示無效連結,處理關聯子表的情況

傳回值: 分頁的頁尾資訊 2.2 Face 介面顯示類

為了介面的統一及靈活而簡易的設定,特封裝此類.調用介面簡易實用。

 

建構函式概覽

Face()

 

 

方法概覽

 void

setStyle(int StyleIndex)  //設定顯示樣式,內建了幾種顏色方案(感謝ezpj2005@yahoo.com.cn朋友); 1 為預設樣式,也可以自己設定顏色方案

 String

Table() //表頭

 String

Table(String width) // 帶參數表頭

 String

TableE()// 表尾

 String

TD() //表格列顯示風格 //顯示空格

 String

TD(int colspan, String label) //表格列顯示風格

 String

TD(int colspan, String label, String align) // 表格列顯示風格

 String

TD(String label) // 表格列顯示風格

 String

TD(String width, int colspan, String label)

 String

TD(String width, String label)

 String

TDD(String value, String label)  //彈出對話方塊,連結列(例如:刪除)

 String

TDD(String value, String label, String msg)

//彈出對話方塊,連結列(例如:刪除)

 String

TDI(String width, int colspan, String value, String label)          

 String

TDI(String value, String label) //連結列

 String

TDI(String value, String label, String method) //連結列

 String

TH()//表格頭顯示風格 //顯示空格

 String

TH(int colspan, String label) //表格頭顯示風格

 String

TH(String label)//  表格頭顯示風格

 String

TH(String width, int colspan, String label)

 String

TH(String width, String label)          

 String

THI(String width, int colspan, String value, String label)          

 String

THI(String value, String label)       //連結列

 String

TR()//   普通行顯示風格(例如添加、修改、查詢介面時調用,或者表頭、分頁尾注等部分調用)

 String

TRB() //     瀏覽行顯示風格(瀏覽、查詢結果顯示時調用)

 String

TRE() //行尾標誌

 

建構函式細節

Face

public Face()

方法細節

setStyle

public void setStyle(int StyleIndex)

  //設定顯示樣式,內建了幾種顏色方案(感謝ezpj2005@yahoo.com.cn朋友); 1 為預設樣式,也可以自己設定顏色方案

參數: StyleIndex -

Table

public String Table()  表頭

Table

public String Table(String width)  帶參數表頭

參數:

width - //表格寬度

TableE

public String TableE()  表尾

TR

public String TR()

  普通行顯示風格(例如添加、修改、查詢介面時調用,或者表頭、分頁尾注等部分調用)

TRB

public String TRB()  瀏覽行顯示風格(瀏覽、查詢結果顯示時調用)

TRE

public String TRE()  //行尾標誌

TH

public String TH()  表格頭顯示風格 //顯示空格

TH

public String TH(String label)  表格頭顯示風格

參數:

label - //要顯示的內容

TH

public String TH(int colspan, String label)  表格頭顯示風格

參數:

label - //要顯示的內容

colspan - //跨列顯示

TH

public String TH(String width, String label)  

參數:

width - //列寬度

label - //要顯示的內容

TH

public String TH(String width, int colspan, String label)  

參數:

width - //列寬度

colspan - //跨列顯示

label - //要顯示的內容

THI

public String THI(String value,

                            String label)

  //連結列

參數:

label - //顯示內容

value - //要連結的內容

THI

public String THI(String width, int colspan, String value, String label)  

參數:

width - //列寬度

colspan - //跨列顯示

value - //要連結的內容

label - //要顯示的內容

TD

public String TD()  表格列顯示風格 //顯示空格

TD

public String TD(String label)  表格列顯示風格

參數:

label - //要顯示的內容

TD

public String TD(int colspan, String label)  表格列顯示風格

參數:

label - //要顯示的內容

colspan - //跨列顯示

TD

public String TD(int colspan, String label, String align) 表格列顯示風格

參數:

label - //要顯示的內容

colspan - //跨列顯示

align - //對齊

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.