SpringBoot整合PageHelper分頁(yè)無效的常見原因分析
SpringBoot整合PageHelper分頁(yè)無效的常見原因
1.maven依賴的問題
此類原因是與pom.xml文件中引入的分頁(yè)依賴有關(guān)
由于springboot本身集成pagerhelper的分頁(yè)插件
只需要引入如下依賴即可
<!-- spring-boot mybatis pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>如引入的為如下依賴
需要添加Bean注入(如何添加請(qǐng)自行百度)
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.1.10</version>
</dependency>2.執(zhí)行PageHelper.startPage(int pageNum, int pageSize)
后沒有緊跟分頁(yè)查詢,而是先執(zhí)行了其他查詢
如下初始化分頁(yè)器后,應(yīng)該緊跟mybatis的分頁(yè)查詢語句,方法中如有其他查詢需求,需要在其他查詢完成后,再執(zhí)行PageHelper.startPage(int pageNum, int pageSize)方法
public PageInfo<R> page(Map<String, ? extends Object> map) {
//獲取第1頁(yè),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的分頁(yè)攔截器(也是我遇到的問題)
當(dāng)攔截器沒有配置的時(shí)候,每次進(jìn)行List查詢都會(huì)返回全部結(jié)果數(shù)據(jù),此時(shí)需要在啟動(dòng)類中注入攔截器類
@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進(jìn)行分頁(yè)時(shí),遇到查詢出全部數(shù)據(jù)而沒有進(jìn)行分頁(yè)的常見問題及解決方案。
這些僅為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
list,set,map,數(shù)組之間的相互轉(zhuǎn)換詳細(xì)解析
以下是對(duì)Java中l(wèi)ist,set,map,數(shù)組之間的相互轉(zhuǎn)換進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過來參考下2013-09-09
IntelliJ IDEA中使用mybatis-generator的示例
這篇文章主要介紹了IntelliJ IDEA中使用mybatis-generator,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-04-04
解決java連接虛擬機(jī)Hbase無反應(yīng)的問題
這篇文章主要介紹了解決java連接虛擬機(jī)Hbase無反應(yīng)的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-06-06
Android開發(fā)Kotlin實(shí)現(xiàn)圓弧計(jì)步器示例詳解
這篇文章主要為大家介紹了Android開發(fā)Kotlin繪制圓弧計(jì)步器示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
Java的Spring框架中bean的繼承與內(nèi)部bean的注入
這篇文章主要介紹了Java的Spring框架中bean的繼承與內(nèi)部bean的注入,Spring框架是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下2015-12-12
springboot自定義redis-starter的實(shí)現(xiàn)
這篇文章主要介紹了springboot自定義redis-starter的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10

