SpringBoot整合PageHelper實現(xiàn)分頁查詢功能詳解
前言
本文介紹的是MyBatis 分頁插件 PageHelper,如果你也在用 MyBatis,建議嘗試該分頁插件,這一定是最方便使用的分頁插件。分頁插件支持任何復雜的單表、多表分頁。
官方文檔:https://pagehelper.github.io/
項目地址:https://github.com/pagehelper/Mybatis-PageHelper
使用方法
導入依賴
在中央倉庫sonatype中搜索 pageHelper
,找到 pagehelper-spring-boot-starter
可以自選版本,選擇你所使用的依賴管理工具對應的依賴坐標,例如我用的依賴管理工具是Maven,那我就選擇對應Maven的依賴坐標。
添加pagehelper-spring-boot-starter
的Maven依賴
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.4.1</version> </dependency>
添加該依賴之后無需再添加MyBatis的依賴,因為該依賴默認依賴了MyBatis:
編寫配置文件
使用yaml格式:
pagehelper: helper-dialect: mysql reasonable: true support-methods-arguments: true params: count=countSql
使用properties格式:
# 指定分頁插件的方言
pagehelper.helper-dialect=mysql
# 分頁合理化
pagehelper.reasonable=true
# 支持方法參數(shù)
pagehelper.support-methods-arguments=true
#配置參數(shù)映射
pagehelper.params=count=countSql
參數(shù)說明:
可參考官方文檔
準備數(shù)據(jù)表
準備Mapper接口
測試查詢?nèi)繑?shù)據(jù)
運行結(jié)果:
默認SQL語句就是查詢?nèi)繑?shù)據(jù)
PageHelper 分頁查詢
使用PageHelper.startPage(pageNum,pageSize)
方法來設置分頁信息,分別是當前頁數(shù)和每頁顯示的總記錄數(shù)
注意:必須在mapper接口中的方法執(zhí)行之前設置該分頁信息
運行結(jié)果:
PageHelper.startPage(pageNum,pageSize)方法只對后面一次查詢生效
下面有2次查詢所有數(shù)據(jù),第1次查詢所有數(shù)據(jù)前插入了PageHelper.startPage(pageNum,pageSize)
方法,所以第1次查詢是分頁查詢,而第2次查詢前沒有插入PageHelper.startPage(pageNum,pageSize)
方法,所以不是分頁查詢。
運行結(jié)果:
驗證一下數(shù)據(jù)庫的全部數(shù)據(jù)也確實只有7條:
以上就是SpringBoot整合PageHelper實現(xiàn)分頁查詢功能詳解的詳細內(nèi)容,更多關于SpringBoot PageHelper分頁查詢的資料請關注腳本之家其它相關文章!
相關文章
springBoot集成redis(jedis)的實現(xiàn)示例
Redis是我們Java開發(fā)中,使用頻次非常高的一個nosql數(shù)據(jù)庫,本文主要介紹了springBoot集成redis(jedis)的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下2023-09-09Java的MyBatis框架中實現(xiàn)多表連接查詢和查詢結(jié)果分頁
這篇文章主要介紹了Java的MyBatis框架中實現(xiàn)多表連接查詢和查詢結(jié)果分頁,借助MyBatis框架中帶有的動態(tài)SQL查詢功能可以比普通SQL查詢做到更多,需要的朋友可以參考下2016-04-04如何開啟控制臺輸出mybatis執(zhí)行的sql日志問題
這篇文章主要介紹了如何開啟控制臺輸出mybatis執(zhí)行的sql日志問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09Java數(shù)據(jù)結(jié)構(gòu)之散列表(動力節(jié)點Java學院整理)
散列表(Hash table,也叫哈希表),是根據(jù)關鍵字(key value)而直接進行訪問的數(shù)據(jù)結(jié)構(gòu)。這篇文章給大家介紹了java數(shù)據(jù)結(jié)構(gòu)之散列表,包括基本概念和散列函數(shù)相關知識,需要的的朋友參考下吧2017-04-04MyBatisPlus+SpringBoot實現(xiàn)樂觀鎖功能詳細流程
樂觀鎖是針對一些特定問題的解決方案,主要解決丟失更新問題,下面這篇文章主要給大家介紹了關于MyBatisPlus+SpringBoot實現(xiàn)樂觀鎖功能的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2023-03-03Java使用Collections工具類對List集合進行排序
這篇文章主要介紹了Java使用Collections工具類對List集合進行排序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-10-10