springBoot使用mybatis-plus插件實現(xiàn)分頁過程
一、項目結(jié)構(gòu)

二、pom.xml 依賴添加
(這里我是加在krystal_dao的pom.xml里面,單個項目,直接加在pom.xml,多模塊根據(jù)自己項目情況添加)
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.0-beta</version>
</dependency>三、新建MyBatisPlusConfig.java
(這里我用專門一個模塊添加一些功能代碼,里面依賴自己根據(jù)報錯添加進去即可)

package com.dm.krystal.core.config;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* @author krystal
*/
@Configuration
/*@MapperScan("com.dm.krystal")*/ /* KrystalApiApplication在啟動文件上寫了,這里不加*/
public class MyBatisPlusConfig {
/**
* mybatis-plus分頁插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
return paginationInterceptor;
}
}四、具體代碼實現(xiàn)
1.controller
IPage<ExaminationPaperRelevancePO> pageData = examinationPaperRelevanceService.getExaminationPaperPageByQueryVO(page,examinationPaperQueryVO);
2.service
IPage<ExaminationPaperRelevancePO> getExaminationPaperPageByQueryVO(Page page, ExaminationPaperQueryVO examinationPaperQueryVO);
3.serviceImp
@Override
public IPage<ExaminationPaperRelevancePO> getExaminationPaperPageByQueryVO(Page page, ExaminationPaperQueryVO examinationPaperQueryVO) {
return this.baseMapper.getExaminationPaperPageByQueryVO(page,examinationPaperQueryVO);
}4.dao
IPage<ExaminationPaperRelevancePO> getExaminationPaperPageByQueryVO(Page page, @Param("examinationPaperQueryVO")ExaminationPaperQueryVO examinationPaperQueryVO);5. .xml
<select id="getExaminationPaperPageByQueryVO" resultType="com.eebbk.core.pojo.vo.ExaminationPaperCatalogVO">
select
a.id,a.paper_id,a.publisher_id,
a.publisher_name,a.grade_id,a.grade_name,
a.semester_id,a.semester_name,
a.subject_id,a.section_id,a.source_type,
a.province_id,a.province_name,a.city_id,
a.city_name,a.`order`,a.staged_type as stageTypeId,a.school_type
from t_examination_paper_relevance a
</select>五、sql 打印

結(jié)果

六、自定義分頁(已有100條數(shù)據(jù),每次截取十條)
IPage<ExaminationPaperPO> pageData = PageUtil.listToPage(paperList,page.getCurrent(),page.getSize());
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.LongAccumulator;
@Slf4j
public class PageUtil {
public static <T> IPage<T> listToPage(List<T> list, long pageNum, long pageSize){
IPage<T> iPage = new Page<>(pageNum,pageSize);
iPage.setTotal(list.size());
int startIndex = (int)((pageNum - 1) * pageSize);
if(null == list || list.isEmpty() || startIndex > list.size()){
iPage.setRecords(new ArrayList<>());
}
else {
int toIndex = (int)(pageNum * pageSize);
iPage.setRecords(list.subList(startIndex,toIndex > list.size() ? list.size() : toIndex));
}
return iPage;
}
}
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- SpringBoot使用Mybatis-Plus中分頁插件PaginationInterceptor詳解
- SpringBoot+MyBatis-Plus進行分頁查詢與優(yōu)化
- SpringBoot+Mybatis-plus實現(xiàn)分頁查詢的示例代碼
- SpringBoot+MyBatis-Plus實現(xiàn)分頁示例
- Springboot整合mybatis-plus使用pageHelper進行分頁(使用步驟)
- SpringBoot+MyBatis-Plus實現(xiàn)分頁的項目實踐
- SpringBoot中使用MyBatis-Plus實現(xiàn)分頁接口的詳細教程
- SpringBoot+MyBatis-Plus實現(xiàn)分頁功能
相關(guān)文章
Java使用Spire.Doc for Java實現(xiàn)自動化合并Word文檔
在日常辦公和軟件開發(fā)中,我們經(jīng)常會遇到需要將多個 Word 文檔合并成一個的需求,本文將聚焦于 Spire.Doc for Java 這一功能強大的庫,為您提供詳細的教程和實用的代碼示例,希望對大家有所幫助2025-12-12
基于SpringBoot實現(xiàn)Web應(yīng)用的登錄與退出功能
登錄與退出功能作為 Web 應(yīng)用中的基礎(chǔ)且重要的組成部分,直接關(guān)系到用戶的安全和隱私保護,所以本文給大家介紹了基于SpringBoot實現(xiàn)Web應(yīng)用的登錄與退出功能,文中有詳細的代碼供大家參考,需要的朋友可以參考下2024-04-04
springboot中ApplicationRunner執(zhí)行順序問題小結(jié)
SpringBoot中ApplicationRunner用于應(yīng)用啟動后執(zhí)行初始化任務(wù),通過@Order注解可控制多個Runner的執(zhí)行順序,數(shù)值越小越優(yōu)先,下面就一起來了解一下2025-06-06
文件上傳SpringBoot后端MultipartFile參數(shù)報空問題的解決辦法
這篇文章主要介紹了文件上傳SpringBoot后端MultipartFile參數(shù)報空問題的解決辦法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11

