SpringBoot集成分頁插件PageHelper的配置和使用過程
SpringBoot集成分頁插件PageHelper配置使用
maven依賴引入
pom.xml配置
<dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.3</version> </dependency>
application.properties文件配置pagehelper分頁插件
#標(biāo)識是數(shù)據(jù)庫方言 pagehelper.helperDialect=mysql #啟用合理化,如果pageNum<1會查詢第一頁,如果pageNum>pages會查詢最后一頁 pagehelper.reasonable=true #為了支持startPage(Object params)方法,增加了該參數(shù)來配置參數(shù)映射,用于從對象中根據(jù)屬性名取值, 可以配置pageNum,pageSize,count,pageSizeZero,reasonable,不配置映射的用默認(rèn)值, 默認(rèn)值為pageNum=pageNum;pageSize=pageSize;count=countSql;reasonable=reasonable;pageSizeZero=pageSizeZero pagehelper.params=count=countSql #支持通過 Mapper 接口參數(shù)來傳遞分頁參數(shù),默認(rèn)值false,分頁插件會從查詢方法的參數(shù)值中,自動根據(jù)上面 params 配置的字段中取值,查找到合適的值時(shí)就會自動分頁 pagehelper.supportMethodsArguments=true #如果 pageSize=0 就會查詢出全部的結(jié)果(相當(dāng)于沒有執(zhí)行分頁查詢) pagehelper.page-size-zero=true
代碼示例
PageHelper.startPage(pageNum, pageSize);//開啟設(shè)置分頁 List<User> users= (List<User> )userDao.selectAll();//mapper文件的查詢 PageInfo<User> pageInfo = new PageInfo<User>(users);//類型轉(zhuǎn)化PageInfo
pagehelper分頁插件中的一個(gè)坑!??!
使用分頁查詢時(shí),加上了查詢條件,結(jié)果查詢的內(nèi)容少了!
原因是pagehelper的配置信息reasonable在搗鬼。
- 當(dāng)pagehelper.reasonable=true
- 先設(shè)定數(shù)據(jù)庫中查詢的范圍,在根據(jù)條件查詢。此時(shí)查詢范圍外的數(shù)據(jù)就查不到了
- 當(dāng)pagehelper.reasonable=false
- 先根據(jù)條件查詢數(shù)據(jù)庫,然后在根據(jù)范圍進(jìn)行分頁。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mybatis 多表關(guān)聯(lián)mapper文件寫法操作
這篇文章主要介紹了mybatis 多表關(guān)聯(lián)mapper文件寫法操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12Java讀文件修改默認(rèn)換行符的實(shí)現(xiàn)
這篇文章主要介紹了Java讀文件修改默認(rèn)換行符的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-12-12springboot中不能獲取post請求參數(shù)的解決方法
這篇文章主要介紹了springboot中不能獲取post請求參數(shù)的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06SpringBoot項(xiàng)目整合MybatisPlus并使用SQLite作為數(shù)據(jù)庫的過程
SQLite是一個(gè)緊湊的庫,啟用所有功能后,庫大小可以小于 750KiB, 具體取決于目標(biāo)平臺和編譯器優(yōu)化設(shè)置, 內(nèi)存使用量和速度之間需要權(quán)衡,這篇文章主要介紹了SpringBoot項(xiàng)目整合MybatisPlus并使用SQLite作為數(shù)據(jù)庫,需要的朋友可以參考下2024-07-07selenium+java+chrome環(huán)境搭建的方法步驟
這篇文章主要介紹了selenium+java+chrome環(huán)境搭建的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Spring中利用SchedulingConfigurer實(shí)現(xiàn)動態(tài)定時(shí)任務(wù)配置的示例
定時(shí)任務(wù)是一項(xiàng)至關(guān)重要的功能,它們使得我們能夠按照預(yù)定的時(shí)間執(zhí)行特定的任務(wù),本文主要介紹了Spring中利用SchedulingConfigurer實(shí)現(xiàn)動態(tài)定時(shí)任務(wù)配置的示例,感興趣的可以了解一下2024-05-05Java實(shí)現(xiàn)Socket的TCP傳輸實(shí)例
這篇文章主要介紹了Java實(shí)現(xiàn)Socket的TCP傳輸,實(shí)例分析了java通過socket實(shí)現(xiàn)TCP傳輸?shù)南嚓P(guān)技巧,需要的朋友可以參考下2015-05-05SpringBoot關(guān)于自定義注解實(shí)現(xiàn)接口冪等性方式
這篇文章主要介紹了SpringBoot關(guān)于自定義注解實(shí)現(xiàn)接口冪等性方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-11-11