1. 程式人生 > 實用技巧 >SpringBoot使用MybatisPlus分頁外掛

SpringBoot使用MybatisPlus分頁外掛

MybatisPlus3.4.1版本

1、配置分頁外掛

 1 @Configuration
 2 public class MybatisPlusConfig {
 3 
 4     /*    舊版本配置
 5     @Bean
 6     public PaginationInterceptor paginationInterceptor(){
 7         return new PaginationInterceptor();
 8     }*/
 9 
10     /**
11      * 新的分頁外掛,一緩和二緩遵循mybatis的規則,需要設定
12      * MybatisConfiguration#useDeprecatedExecutor = false 避免快取出現問題
13 */ 14 @Bean 15 public MybatisPlusInterceptor mybatisPlusInterceptor() { 16 MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); 17 interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); 18 return interceptor; 19 } 20 21
@Bean 22 public ConfigurationCustomizer configurationCustomizer() { 23 return configuration -> configuration.setUseDeprecatedExecutor(false); 24 } 25 }

2、新增@MapperScan註解,掃描mapper介面

1 @SpringBootApplication
2 @MapperScan("com.donleo.mp.mapper")
3 public class MybatisPlusApplication {
4 5 public static void main(String[] args) { 6 SpringApplication.run(MybatisPlusApplication.class, args); 7 } 8 9 }

3、測試

 1  /**
 2      * MybatisPlus分頁外掛使用
 3      */
 4     @Test
 5     void TestPagination(){
 6         Page<User> userPage = new Page<User>(1,2);
 7         Page<User> pageList = userMapper.selectPage(userPage, new QueryWrapper<User>()
 8                 .eq("nick_name", "xx")
 9         );
10         long current = pageList.getCurrent();
11         long size = pageList.getSize();
12         long total = pageList.getTotal();
13 
14         System.out.println("當前頁:"+current);
15         System.out.println("一頁顯示幾條:"+size);
16         System.out.println("總條數:"+total);
17         System.out.println("查詢資料:"+pageList.getRecords());
18     }
查詢結果:

控制檯列印結果: