完美解決MybatisPlus插件分頁查詢不起作用總是查詢?nèi)繑?shù)據(jù)問題
一 介紹
1.1 MyBatis Plus簡介
MyBatis-Plus(簡稱 MP),是一個 MyBatis 的增強(qiáng)工具包,**只做增強(qiáng)不做改變. 發(fā)工作、提高生產(chǎn)率而生。**
我們的愿景是成為 Mybatis 最好的搭檔,就像 魂斗羅 中的 1P、2P,基友搭配,效率翻倍。(來自官方文檔)
1.2 MyBatis Plus的下載
Mybatis Plus開發(fā)增強(qiáng)工具包(通用mapper插件) 3.3.0 官方免費(fèi)版
https://www.jb51.net/softs/543468.html
官方地址:
http://mp.baomidou.com
代碼發(fā)布地址:
Github:https://github.com/baomidou/mybatis-plusGitee:https://gitee.com/baomidou/mybatis-plus
文檔發(fā)布地址:
http://mp.baomidou.com/
問題描述:
在使用mybatisplus插件進(jìn)行分頁查詢時分頁參數(shù)不起作用,總是查出來全部數(shù)據(jù)。
原因分析:
查看打印的sql日志發(fā)現(xiàn)sql后面并沒有l(wèi)imit條件,懷疑是缺少配置。
解決方案:
查閱資料通過添加配置類MybatisPlusConfig解決問題:
@Configurationpublic class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor(){ return new PaginationInterceptor(); }}
如果不配置PaginationInterceptor,MP提供的分頁方法是無效的,例如使用mysql,配置了PaginationInterceptor,調(diào)用MP提供的分頁方法,假設(shè)使用selectPage方法,他會執(zhí)行兩條sql語句,一條查詢總記錄數(shù)的sql,一條查詢當(dāng)前頁記錄的sql是帶limit分頁條件的。如果不配置,調(diào)用selectPage只會執(zhí)行一條查詢記錄的sql,并且不帶limit,有興趣你可以試試,很容易就能驗(yàn)證出來的。
總結(jié)
到此這篇關(guān)于完美解決MybatisPlus插件分頁查詢不起作用總是查詢?nèi)繑?shù)據(jù)問題的文章就介紹到這了,更多相關(guān)MybatisPlus插件分頁查詢不起作用內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 使用MySqldump命令導(dǎo)出數(shù)據(jù)時的注意2. SQL2000管理SQL7服務(wù)器出現(xiàn)TIMEOUT問題的解決3. MySQL存儲過程例子(包含事務(wù)、參數(shù)、嵌套調(diào)用、游標(biāo)循環(huán)等)4. Mysql入門系列:MYSQL圖像數(shù)據(jù)的處理5. 使用Oracle數(shù)據(jù)庫過程中最常碰到的六個錯誤6. Oracle rac環(huán)境的數(shù)據(jù)庫導(dǎo)入操作步驟7. 利用MySQL空間函數(shù)實(shí)現(xiàn)位置打卡的完整步驟8. SQLite教程(六):表達(dá)式詳解9. Mysql入門系列:建立MYSQL客戶機(jī)程序的一般過程10. 導(dǎo)出錯誤編碼的mysql數(shù)據(jù)庫
