淺談Mybatis分頁插件,自定義分頁的坑
場景:PageHelper 的默認(rèn)分頁方案是 select count(0) from (你的sql) table_count
由于查詢數(shù)據(jù)比較大時,導(dǎo)致分頁查詢效率低下。
優(yōu)化:使用自定義的count查詢。、
廢話不多說,對應(yīng)代碼如下:
這個時候會使用自定義的 count sql進(jìn)行統(tǒng)計查詢。
然后一般分頁默認(rèn)使用 PageHelper.startPage();
作者優(yōu)化:如果獲取的數(shù)量大于實(shí)際數(shù)量,則進(jìn)行pageNum優(yōu)化。
所以 最好建議重載 startPage。 不進(jìn)行優(yōu)化!?。?要不然莫名其妙的分頁失效。每次都能查出數(shù)據(jù)。
補(bǔ)充知識:在mybatis-plus中使用分頁插件做分頁出現(xiàn)的問題
在使用mybatis-plus中使用分頁插件做自定義XML分頁查詢的時候,自己定義的XML中的SQL后面多了一個分號,各種查不到,也沒有報錯。最后定位到是一個分號的問題!
理論上使用mybatis里面寫sql最后是不能帶分號的。
但是mybatis-plus中其他的查詢帶分號都沒有事,只有這個分頁查詢,分頁的page對象一傳進(jìn)去之后就查不到結(jié)果,這個坑找了好長時間
以上這篇淺談Mybatis分頁插件,自定義分頁的坑就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
自己動手在Spring-Boot上加強(qiáng)國際化功能的示例
這篇文章主要介紹了自己動手在Spring-Boot上加強(qiáng)國際化功能的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04使用shardingsphere對SQLServer坑的解決
本文主要介紹了使用shardingsphere對SQLServer坑的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-03-03String類下compareTo()與compare()方法比較
這篇文章主要介紹了String類下compareTo()與compare()方法比較的相關(guān)資料,需要的朋友可以參考下2017-05-05Spring Boot實(shí)現(xiàn)數(shù)據(jù)訪問計數(shù)器方案詳解
在Spring Boot項(xiàng)目中,有時需要數(shù)據(jù)訪問計數(shù)器,怎么實(shí)現(xiàn)數(shù)據(jù)訪問計數(shù)器呢?下面小編給大家?guī)砹薙pring Boot數(shù)據(jù)訪問計數(shù)器的實(shí)現(xiàn)方案,需要的朋友參考下吧2021-08-08java非遞歸實(shí)現(xiàn)之二叉樹的前中后序遍歷詳解
樹的遍歷順序大體分為三種:前序遍歷(先根遍歷、先序遍歷),中序遍歷(中根遍歷),后序遍歷(后根遍歷),本文將給大家詳細(xì)的介紹,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值2021-09-09詳述 DB2 分頁查詢及 Java 實(shí)現(xiàn)的示例
本篇文章主要介紹了詳述 DB2 分頁查詢及 Java 實(shí)現(xiàn)的示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-09-09Java中的synchronized有幾種加鎖方式(實(shí)例詳解)
在Java中,synchronized關(guān)鍵字提供了內(nèi)置的支持來實(shí)現(xiàn)同步訪問共享資源,以避免并發(fā)問題,這篇文章主要介紹了java的synchronized有幾種加鎖方式,需要的朋友可以參考下2024-05-05java使用spring實(shí)現(xiàn)讀寫分離的示例代碼
本篇文章主要介紹了java使用spring實(shí)現(xiàn)讀寫分離的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-12-12