Mybatis 實現物理分頁的簡單實現

2021-07-28 14:48:56 字數 1388 閱讀 7110

分頁查詢:

首先我們要明確什麼是分頁?為什麼要去分頁?

分頁就是將資料以多頁去展示,使用分頁可以提高客戶的感受。

分頁的分類:

1.物理分頁:只從資料庫中查詢當前頁的資料

優點:不占用很多記憶體   缺點:效率比價低(相比於邏輯分頁)

2.邏輯分頁:從資料庫將所有記錄查詢出來,儲存到記憶體中,展示當前頁,然後資料再直接從記憶體中獲取

優點:效率高              缺點:占用記憶體比較高

大多數情況下,我們用的都是物理分頁。

物理分頁:

1.直接用jdbc完成:使用滾動結果集  

優點:跨資料庫     缺點:效能低

2.使用資料庫本身提供的分頁操作:使用每乙個資料庫特定的分頁函式

優點:效能高       缺點:不能跨資料庫

mysql  :       limit

sql service: top

oracle:         rownum 

我用 都是mysql 所以就說下limit

select * from 表 limit m,n;

m:代表是從第幾條開始(它是從0開始算的)

n:代表查詢幾條記錄

假如我們要顯示3條記錄,要查詢第2頁的資料

那麼select * from 表 limit (頁面-1)* 每頁每條,每頁條數;

接著我們開始編寫實體類

省略了get\set方法

用語封裝所要的東西 提供給前端

這裡要注意:

1.兩個引數 必須要用0,1 不能用名字 會報錯

2.sql是不能做計算的,要把公式算完後再代進去,不然就會報錯

編寫service層

這裡的pagenum是每頁要顯示的條數,一般我們後台自己設定

currentpage是前台傳來的第幾頁

這些我們在控制層模擬下就行 控制層就省略了

最終返回頁面的結構就是分頁的結果了

pagenum對應的就是當前頁0

然後每頁顯示的條數就是2

其他省略了 查出來後填進去就行

通各位大神分析了mybatis用外掛程式分頁的優缺點

最後還是手動分頁 算是對今天工作的總結吧。

mybatis實現物理分頁

物理分頁 把資料在資料庫中進行分頁,得到需要的那頁資訊 邏輯分頁 把資料從資料庫中全部拿出來,在後台進行分頁,得到需要的那頁資訊 背景 ssm框架 mysql 一 準備pager類 public class pager public pager int pagesize,int currentpag...

mybatis物理分頁(常用)

分頁查詢 首先我們要明確什麼是分頁?為什麼要去分頁?分頁就是將資料以多頁去展示,使用分頁可以提高客戶的感受。分頁的分類 1.物理分頁 只從資料庫中查詢當前頁的資料 優點 不占用很多記憶體 缺點 效率比價低 相比於邏輯分頁 2.邏輯分頁 從資料庫將所有記錄查詢出來,儲存到記憶體中,展示當前頁,然後資料...

mybatis實現分頁

邏輯分頁 1.1.業務控制層 public void selectdeptwithpage1 1.2 資料訪問層 select from t department and deptname like if where select 2.物理分頁 這種分頁是我們mysql資料庫支援的,其實也就是拼sq...