MybatisPlus分頁失效不起作用的解決
【問題描述】
在使用MybatisPlus的selectPage時(shí)發(fā)現(xiàn)分頁不起作用,每次返回的都是全部的數(shù)據(jù),同時(shí)getPages()和getTotal()返回的都是0。
【相關(guān)代碼】
mybatisPlus的版本:
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.1</version>
</dependency>selectPage操作的示例代碼:
IPage<UserBuyCarsDao> userBuyCarsDaoPage = userBuyCarsMapper.selectPage(new Page<>(currentPage, pageSize), new LambdaQueryWrapper<UserBuyCarsDao>()
.eq(UserBuyCarsDao::getUserCode, userCode)
.eq(UserBuyCarsDao::getIsDelete, 0));其中UserBugCarsDao和userBugCarsMapper都定義完整,不會(huì)存在問題。
如果使用分頁操作是需要添加攔截器的,config代碼如下:
@Configuration
@MapperScan(basePackages = {"com.core.mapper"})
public class MybatisPlusConfig {
/**
* 新的分頁插件,一緩和二緩遵循mybatis的規(guī)則,需要設(shè)置 MybatisConfiguration#useDeprecatedExecutor = false 避免緩存出現(xiàn)問題(該屬性會(huì)在舊插件移除后一同移除)
*/
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
@Bean
public PaginationInnerInterceptor paginationInnerInterceptor() {
PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
paginationInnerInterceptor.setOverflow(false);
return paginationInnerInterceptor;
}
}
【問題定位】
初步懷疑是攔截器沒有生效,為了驗(yàn)證這一點(diǎn),在mybatisPlusInterceptor()函數(shù)中打一個(gè)斷點(diǎn)。執(zhí)行測試程序,發(fā)現(xiàn)確實(shí)沒有進(jìn)入這個(gè)函數(shù)。
為什么MybatisPlusInterceptor這個(gè)bean注冊不成功?是不是啟動(dòng)程序沒有掃描到這個(gè)@Configuration標(biāo)記。
查看springboot的啟動(dòng)類,發(fā)現(xiàn)確實(shí)沒有掃描到這個(gè)包文件。
【問題修復(fù)】
在springboot啟動(dòng)類中增加掃描config文件的路徑,示例如下:

然后再執(zhí)行debug,發(fā)現(xiàn)可以進(jìn)入mybatisPlusInterceptor的斷點(diǎn)。
到此這篇關(guān)于MybatisPlus分頁失效不起作用的解決的文章就介紹到這了,更多相關(guān)MybatisPlus分頁失效內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot中使用@Async實(shí)現(xiàn)異步任務(wù)調(diào)用詳解
這篇文章主要介紹了SpringBoot中使用@Async實(shí)現(xiàn)異步任務(wù)調(diào)用詳解,一個(gè)可以無需等待被調(diào)用函數(shù)的返回值就讓操作繼續(xù)進(jìn)行的方法(來自百度百科),即程序在順序執(zhí)行時(shí),不等待異步調(diào)用的語句返回結(jié)果就執(zhí)行后面的程序,需要的朋友可以參考下2023-12-12
Spring Boot 配置 IDEA和DevTools 熱部署的方法
這篇文章主要介紹了Spring Boot 配置 IDEA和DevTools 熱部署的方法,需要的朋友可以參考下2018-02-02
JavaEE實(shí)現(xiàn)基于SMTP協(xié)議的郵件發(fā)送功能
這篇文章主要為大家詳細(xì)介紹了JavaEE實(shí)現(xiàn)基于SMTP協(xié)議的郵件發(fā)送功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
Spring注解驅(qū)動(dòng)之ApplicationListener用法解讀
這篇文章主要介紹了Spring注解驅(qū)動(dòng)之ApplicationListener用法解讀,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
java實(shí)現(xiàn)的二級聯(lián)動(dòng)菜單效果
這篇文章主要介紹了java實(shí)現(xiàn)的二級聯(lián)動(dòng)菜單效果,結(jié)合實(shí)例形式分析了java前臺頁面布局及與后臺交互構(gòu)造聯(lián)動(dòng)菜單的相關(guān)技巧,需要的朋友可以參考下2016-08-08
Java實(shí)現(xiàn)在線考試系統(tǒng)與設(shè)計(jì)(學(xué)生功能)
這篇文章主要介紹了Java實(shí)現(xiàn)在線考試系統(tǒng)與設(shè)計(jì)(學(xué)生功能),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-02-02

