SpringBoot整合PageHelper分頁無效的常見原因分析
SpringBoot整合PageHelper分頁無效的常見原因
1.maven依賴的問題
此類原因是與pom.xml文件中引入的分頁依賴有關(guān)
由于springboot本身集成pagerhelper的分頁插件
只需要引入如下依賴即可
<!-- spring-boot mybatis pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>如引入的為如下依賴
需要添加Bean注入(如何添加請自行百度)
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.10</version>
</dependency>2.執(zhí)行PageHelper.startPage(int pageNum, int pageSize)
后沒有緊跟分頁查詢,而是先執(zhí)行了其他查詢
如下初始化分頁器后,應(yīng)該緊跟mybatis的分頁查詢語句,方法中如有其他查詢需求,需要在其他查詢完成后,再執(zhí)行PageHelper.startPage(int pageNum, int pageSize)方法
public PageInfo<R> page(Map<String, ? extends Object> map) {
//獲取第1頁,10條內(nèi)容,默認(rèn)查詢總數(shù)count
PageHelper.startPage(Integer.parseInt(map.get("pageNum").toString()), Integer.parseInt(map.get("pageSize").toString()));
String sql = String.format("%s%s",sqlMapping , map.get("mapping")==null?"getPageObjList" : map.get("mapping")) ;
List<R> l = sqlSessionTemplate.selectList(sql , map);
return new PageInfo<R>(l);
}3.沒有配置mybatis的分頁攔截器(也是我遇到的問題)
當(dāng)攔截器沒有配置的時候,每次進行List查詢都會返回全部結(jié)果數(shù)據(jù),此時需要在啟動類中注入攔截器類
@Bean
public Interceptor[] plugins() {
return new Interceptor[]{new PageInterceptor()};
}或者在MyBatis的配置文件mybatis-config.xml中添加如下代碼
<configuration> <plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor"/> </plugins> </configuration>
總結(jié)
以上就是綜合網(wǎng)上大家遇到的springboot使用pagehelper進行分頁時,遇到查詢出全部數(shù)據(jù)而沒有進行分頁的常見問題及解決方案。
這些僅為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
解析Java中的Timer和TimerTask在Android中的用法和實例
本篇文章主要介紹了解析Java中的Timer和TimerTask在Android中的用法,主要介紹了Timer和TimerTask的用法,有需要的可以了解一下。2016-11-11
Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解
這篇文章主要介紹了Java內(nèi)存區(qū)域與內(nèi)存溢出異常詳解的相關(guān)資料,需要的朋友可以參考下2017-03-03
IDEA無法創(chuàng)建JDK1.8版本的Springboot項目問題解決(2種方法)
本文主要介紹了IDEA無法創(chuàng)建JDK1.8版本的Springboot項目問題解決,包含兩種解決方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-07-07
詳解如何為SpringBoot Web應(yīng)用的日志方便追蹤
在Web應(yīng)用程序領(lǐng)域,有效的請求監(jiān)控和可追溯性對于維護系統(tǒng)完整性和診斷問題至關(guān)重要,SpringBoot是一種用于構(gòu)建Java應(yīng)用程序的流行框架,在本文中,我們探討了在SpringBoot中向日志添加唯一ID的重要性,需要的朋友可以參考下2023-11-11
關(guān)于在IDEA熱部署插件JRebel使用問題詳解
這篇文章主要介紹了關(guān)于在IDEA熱部署插件JRebel使用問題詳解,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12
spring+springmvc+mybatis 開發(fā)JAVA單體應(yīng)用
這篇文章主要介紹了spring+springmvc+mybatis 開發(fā)JAVA單體應(yīng)用的相關(guān)知識,本文通過圖文實例代碼的形式給大家介紹的非常詳細 ,需要的朋友可以參考下2018-11-11
mybatis createcriteria和or的區(qū)別說明
這篇文章主要介紹了mybatis createcriteria和or的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07

