自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iBATIS分頁(yè)實(shí)例中ObjectDataSource的應(yīng)用淺析

開發(fā) 后端
iBATIS分頁(yè)實(shí)例中ObjectDataSource的應(yīng)用將向你介紹如何使用ObjectDataSource達(dá)成iBATIS分頁(yè)實(shí)例。

iBATIS分頁(yè)實(shí)例中ObjectDataSource的應(yīng)用首先讓我們來看看屬性方面的特點(diǎn),ObjectDataSource 控件內(nèi)置了對(duì)分頁(yè)的支持。我們需要設(shè)置 ObjectDataSource 的 EnablePaging屬性,然后要設(shè)置SelectMethod、SelectCountMethod 、StartRowIndexParameterName和MaximumRowsParameterName 屬性。當(dāng) EnablePaging 屬性設(shè)置為 true 時(shí),SelectParameters 集合包含兩個(gè)額外的參數(shù),一個(gè)用于請(qǐng)求的第一行,另一個(gè)用于請(qǐng)求的行數(shù)。這兩個(gè)參數(shù)的名稱由StartRowIndexParameterName 和 MaximumRowsParameterName 屬性定義。SelectMethod應(yīng)該返回從指定的索引處開始的請(qǐng)求的行數(shù)。因?yàn)閿?shù)據(jù)可能不是按頁(yè)大小平均分割的,所以最后一頁(yè)可能包含較少的行。因此,請(qǐng)求的行數(shù)實(shí)際上是返回的最大行數(shù)。

上面提及的后四個(gè)屬性的含義很容易理解,簡(jiǎn)單的說,我們要實(shí)現(xiàn)兩個(gè)方法,一個(gè)是返回總的記錄數(shù)(SelectCountMethod),一個(gè)則返回當(dāng)前請(qǐng)求頁(yè)的記錄(SelectMethod),SelectMethod方法至少要包含兩個(gè)參數(shù),以指定欲請(qǐng)求記錄的起始索引和欲返回的最大行數(shù)。

SelectCountMethod一般容易實(shí)現(xiàn)。而SelectMethod則比較麻煩,常見的解決方案是存儲(chǔ)過程,這樣的存儲(chǔ)過程通常與特定表緊密耦合,難以通用。

使用iBATIS時(shí),我們通過ISqlMapper接口來訪問數(shù)據(jù)庫(kù)。其中的一個(gè)方法相當(dāng)有用:

  1. IList<T> QueryForList<T>(string statementName, object parameterObject, int skipResults, int maxResults);  

前兩個(gè)參數(shù)作查詢之用,而后兩個(gè)參數(shù)則與ObjectDataSource的StartRowIndexParameterName 和 MaximumRowsParameterName 屬性的設(shè)計(jì)不謀而合!

這樣一來,我們就可以只關(guān)注查詢本身了,把分頁(yè)功能交由iBatis和ObjectDataSource來打理。最重要的是,這個(gè)方法相當(dāng)通用,也不需對(duì)查詢語(yǔ)句作額外的處理。

我的測(cè)試數(shù)據(jù)為20萬(wàn)條,翻頁(yè)所需時(shí)間在0.7秒左右,效果很不錯(cuò)了,大家有興趣可以嘗試下。

iBATIS分頁(yè)實(shí)例圖 

iBATIS分頁(yè)實(shí)例中ObjectDataSource的應(yīng)用就介紹到這里,希望通過本文的介紹使你對(duì)iBATIS分頁(yè)實(shí)例中ObjectDataSource的應(yīng)用有所更高的了解。

【編輯推薦】

  1. iBATIS.NET API基礎(chǔ)淺析
  2. iBATIS映射文件基礎(chǔ)淺談
  3. iBATIS ParameterMap配置實(shí)例淺析
  4. iBATIS ResultMap基礎(chǔ)淺析
  5. iBATIS CacheModel使用淺析
責(zé)任編輯:仲衡 來源: cnblogs
相關(guān)推薦

2009-07-17 10:59:59

iBATIS接口

2009-07-22 09:44:05

iBATIS Para

2009-07-17 10:32:45

iBATIS MapB

2009-07-22 11:27:36

iBATIS模糊查詢

2009-07-16 13:08:09

iBATIS快速創(chuàng)建應(yīng)

2009-07-21 11:17:46

iBATISDAO的配置

2009-07-17 17:45:56

iBATIS Spri

2009-07-17 10:20:24

iBATIS實(shí)例

2009-07-21 11:12:00

iBATIS配置

2009-07-15 17:58:07

iBATIS 動(dòng)態(tài)映射

2009-07-16 10:23:30

iBATIS工作原理

2009-07-22 10:42:59

iBATIS Cach

2010-05-06 14:01:12

Oracle分頁(yè)存儲(chǔ)過

2009-07-22 10:03:11

iBATIS Resu

2009-07-16 09:14:26

iBATIS DAO

2009-07-20 18:00:16

iBATIS DAO事

2009-07-15 17:19:31

iBATIS Ecli

2009-07-22 13:04:41

iBATIS動(dòng)態(tài)查詢

2009-07-20 14:56:18

iBATIS.NET動(dòng)態(tài)選擇DAO

2009-07-20 17:01:11

Struts2.0+i
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)