詳解MybatisPlus3.4版本之後分頁插件的使用
一、MybatisPlusInterceptor
從Mybatis Plus 3.4.0版本開始,不再使用舊版本的PaginationInterceptor ,而是使用MybatisPlusInterceptor。
MybatisPlusInterceptor是一系列的實現InnerInterceptor的攔截器鏈,也可以理解為一個集合。可以包括如下的一些攔截器
- 自動分頁: PaginationInnerInterceptor(最常用)
- 多租戶: TenantLineInnerInterceptor
- 動態表名: DynamicTableNameInnerInterceptor
- 樂觀鎖: OptimisticLockerInnerInterceptor
- sql性能規范: IllegalSQLInnerInterceptor
- 防止全表更新與刪除: BlockAttackInnerInterceptor
二、舊版分頁插件配置方法(Mybatis Plus 3.4.0版本之前)
@Configuration @MapperScan(basePackages = {"com.zimug.**.mapper"}) public class MybatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor() { PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); // 設置請求的頁面大於最大頁後操作, true調回到首頁,false 繼續請求 默認false // paginationInterceptor.setOverflow(false); // 設置最大單頁限制數量,默認 500 條,-1 不受限制 // paginationInterceptor.setLimit(500); // 開啟 count 的 join 優化,隻針對部分 left join paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true)); return paginationInterceptor; } }
三、新的分頁插件配置方法(Mybatis Plus 3.4.0版本及其之後的版本)
新的分頁插件,一緩和二緩遵循mybatis的規則,需要設置 MybatisConfiguration#useDeprecatedExecutor = false 避免緩存出現問題
@Configuration @MapperScan(basePackages = {"com.zimug.**.mapper"}) public class MybatisPlusConfig { /** * 新的分頁插件,一緩和二緩遵循mybatis的規則,需要設置 MybatisConfiguration#useDeprecatedExecutor = false 避免緩存出現問題(該屬性會在舊插件移除後一同移除) */ @Bean public MybatisPlusInterceptor mybatisPlusInterceptor() { MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); //向Mybatis過濾器鏈中添加分頁攔截器 interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL)); //還可以添加i他的攔截器 return interceptor; } @Bean public ConfigurationCustomizer configurationCustomizer() { return configuration -> configuration.setUseDeprecatedExecutor(false); } }
四、分頁查詢的使用方法
分頁查詢的使用方法沒有變化,仍然和Mybatis之前的版本一致,沒有變化。 這裡簡單舉一個例子
Page<SysUserOrg> page = new Page<> (pageNum,pageSize); //查詢第pageNum頁,每頁pageSize條數據 //將分頁參數page作為Mybatis或Mybatis Plus的第一個參數傳入持久層函數,即可完成分頁查詢 return mySystemMapper.selectUser(page, 其他參數 );
本文轉載出處:字母哥博客
到此這篇關於詳解MybatisPlus3.4版本之後分頁插件的使用的文章就介紹到這瞭,更多相關MybatisPlus3.4 分頁內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- mybatisplus如何解決分頁最多500條數據
- 詳解基於MybatisPlus兩步實現多租戶方案
- mybatis-plus返回查詢總記錄數方式
- oracle+mybatis-plus+springboot實現分頁查詢的實例
- Mybatis-Plus支持GBase8s分頁查詢的實現示例