開始時的配置:
package com.example.demo.configuration; import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * ${todo} * * @date: 2020/11/18 * @author: Li Bin */ @Configuration public class MybatisPlusConfig { @Bean public PaginationInnerInterceptor paginationInnerInterceptor(){ return new PaginationInnerInterceptor(); } }
測試代碼:
/** * 分頁測試 */ @Test public void selectPage(){ QueryWrapper<User> queryWrapper=new QueryWrapper<>(); queryWrapper.gt("age",18); Page<User> page=new Page<User>(0,1); IPage<User> userPage = userMapper.selectPage(page, queryWrapper); System.out.println("總頁數:"+userPage.getPages()); System.out.println("總記錄數:"+userPage.getTotal()); List<User> records = userPage.getRecords(); records.forEach(System.out::println); }
網上找了一些解決方法,說是去掉原來項目中的分頁插件的依賴,或者設置分頁插件方言什么的。
我斷點斷在這個配置類里,可以進去,說明代碼沒有問題,只是分頁沒起作用。
試了下下面這個配置,居然好了。
@Configuration public class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { PaginationInterceptor page = new PaginationInterceptor(); page.setDialectType("mysql"); return page; } }
我用的是
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.0</version>
</dependency>