MyBatis-Plus分頁(yè)插件不生效的解決方法
描述
項(xiàng)目中用到boot 整合 mybatis-plus , 個(gè)人在使用分頁(yè)條件查詢的時(shí)候一直查不出 total, pages, 終于找到原因了.
環(huán)境
<springboot.version>2.1.5.RELEASE</springboot.version> <mybatisplus.version>3.1.1</mybatisplus.version>
配置
1.自定義MybatisPlusConfig 配置分頁(yè)插件
package com.eyelake.smart.park.portal.config;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @Author: LiangJingXing
* @Date: 2019/8/21 19:38
* @Decription: MybatisPlus 配置分頁(yè) 性能分析
*/
@Configuration
@MapperScan("com.eyelake.smart.park.portal.mapper.park")
public class MybatisPlusConfig {
/**
* 分頁(yè)插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor().setDialectType("mysql");
}
}
2.自定義的DataSourceConfig
public class DataSourceConfig {
@Autowired
private PaginationInterceptor paginationInterceptor;
...
@Primary
@Bean(name = "helmetSqlSessionFactory")
public SqlSessionFactory helmetSqlSessionFactory(@Qualifier("helmetDataSource") DataSource helmetDataSource)
throws Exception {
MybatisSqlSessionFactoryBean sqlSessionFactory = new MybatisSqlSessionFactoryBean();
sqlSessionFactory.setDataSource(helmetDataSource);
...
// 關(guān)鍵代碼 設(shè)置 MyBatis-Plus 分頁(yè)插件
Interceptor[] plugins = {paginationInterceptor};
sqlSessionFactory.setPlugins(plugins);
...
return sqlSessionFactory.getObject();
}
}
3.執(zhí)行分頁(yè)查詢
Page<UserInfoDto> page = new Page<>(currentPage, pageSize);
QueryWrapper<UserInfoDto> userInfoDtoQueryWrapper = new QueryWrapper<>();
userInfoDtoQueryWrapper.groupBy("tui.id ");
IPage<UserInfoDto> userInfoDtoIPage = baseMapper.selectAllUserInfoDtoByPage(page, userInfoDtoQueryWrapper);
4.查看數(shù)據(jù)

mybatis plus分頁(yè)不出來(lái)pages和total的解決記錄
按著官方的分頁(yè)例子寫完以后,發(fā)現(xiàn)pages和total都為0,仔細(xì)觀察了好多遍還是沒(méi)解決。
最好找到一段配置添加后,正常了。
package kulink.cvscloud.core.config;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.baomidou.mybatisplus.plugins.PaginationInterceptor;
@Configuration
public class MybatisPlusConfig {
/**
* mybatis-plus分頁(yè)插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor page = new PaginationInterceptor();
page.setDialectType("mysql");
return page;
}
}
到此這篇關(guān)于MyBatis-Plus分頁(yè)插件不生效的解決方法的文章就介紹到這了,更多相關(guān)MyBatis-Plus分頁(yè)不生效內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
舉例解析Java的設(shè)計(jì)模式編程中里氏替換原則的意義
這篇文章主要介紹了Java的設(shè)計(jì)模式中里氏替換原則的意義,文中舉例來(lái)說(shuō)明里氏替換原則中強(qiáng)調(diào)的繼承特性方面可能帶來(lái)的問(wèn)題,需要的朋友可以參考下2016-02-02
優(yōu)化Java內(nèi)存管理來(lái)防止“GC”錯(cuò)誤的方法詳解
垃圾回收(GC)是 Java 中的一個(gè)重要機(jī)制,它可以管理內(nèi)存并回收不再使用的對(duì)象所占用的資源,在本文中,我們將探討一些技巧,幫助您避免這一錯(cuò)誤,確保您的 Java 應(yīng)用程序順利運(yùn)行,需要的朋友可以參考下2023-11-11
Java基于Socket實(shí)現(xiàn)多人聊天室
這篇文章主要為大家詳細(xì)介紹了Java基于Socket實(shí)現(xiàn)多人聊天室,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09
Java后臺(tái)Controller實(shí)現(xiàn)文件下載操作
這篇文章主要介紹了Java后臺(tái)Controller實(shí)現(xiàn)文件下載操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-10-10
淺談JSP與Servlet傳值及對(duì)比(總結(jié))
下面小編就為大家?guī)?lái)一篇淺談JSP與Servlet傳值及對(duì)比(總結(jié))。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-05-05
Java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾如何實(shí)現(xiàn)
這篇文章主要介紹了Java利用數(shù)組隨機(jī)抽取幸運(yùn)觀眾如何實(shí)現(xiàn),需要的朋友可以參考下2014-02-02
sentinel配置 持久化到nacos的詳細(xì)過(guò)程
這篇文章主要介紹了sentinel配置 持久化到nacos的詳細(xì)過(guò)程,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-08-08

