本文參考自:
物理分頁
物理分頁依賴的是某一物理實體,這個物理實體就是資料庫,即:在查詢資料庫時在庫里執行分頁,
比如mysql資料庫提供了limit關鍵字,程式設計師只需要編寫帶有limit關鍵字的sql語句,資料庫返回的就是分頁結果。
邏輯(記憶體)分頁
邏輯分頁依賴的是程式設計師編寫的**。資料庫返回的不是分頁結果,而是全部資料,然後再由程式設計師通過**獲取分頁資料,(取出全部資料先存於記憶體中,再取出需要的資料)
常用的操作是一次性從資料庫中查詢出全部資料並儲存到list集合中,因為list集合有序,再根據索引獲取指定範圍的資料。
例項:rowbound 屬於記憶體分頁,pagehelper屬於物理分頁。
對比物理分頁每次都訪問資料庫,邏輯分頁只訪問一次資料庫,物理分頁對資料庫造成的負擔大。
邏輯分頁一次性將資料讀取到記憶體,占用了較大的內容空間,物理分頁每次只讀取一部分資料,占用記憶體空間較小。
邏輯分頁一次性將資料讀取到記憶體,資料發生改變,資料庫的最新狀態不能實時反映到操作中,實時性差。物理分頁每次需要資料時都訪問資料庫,能夠獲取資料庫的最新狀態,實時性強。
邏輯分頁主要用於資料量不大、資料穩定的場合,物理分頁主要用於資料量較大、更新頻繁的場合。
物理分頁和記憶體分頁和邏輯分頁
物理分頁依賴的是某一物理實體,這個物理實體就是資料庫,比如mysql資料庫提供了limit關鍵字,程式設計師只需要編寫帶有limit關鍵字的sql語句,資料庫返回的就是分頁結果。邏輯分頁依賴的是程式設計師編寫的 資料庫返回的不是分頁結果,而是全部資料,然後再由 程式設計師通過 獲取分頁資料,常用的操...
邏輯分頁與物理分頁的區別
邏輯分頁 邏輯分頁依賴於 例 mybatis自帶的分頁外掛程式就是邏輯分頁 同時邏輯分頁是先查詢出所有的資料,再根據 塊的所需 例 你需要拿到第幾頁,每頁幾條的資料 篩選出合適的資料進行分頁。物理分頁 物理分頁依賴於資料庫。更側重於sql語句 例 mysql資料庫提供的分頁關鍵字 limit 程式設...
物理分頁和邏輯分頁
物理分頁依賴的是某一物理實體,這個物理實體就是資料庫,比如mysql資料庫提供了limit關鍵字,程式設計師只需要編寫帶有limit關鍵字的sql語句,資料庫返回的就是分頁結果。邏輯分頁依賴的是程式設計師編寫的 資料庫返回的不是分頁結果,而是全部資料,然後再由程式設計師通過 獲取分頁資料,常用的操作...