最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springBoot使用mybatis-plus插件實現(xiàn)分頁過程

 更新時間:2026年04月26日 10:58:37   作者:千反田真的打不過我  
本文介紹了MyBatisPlus的集成步驟,包括項目結(jié)構(gòu)調(diào)整、pom.xml依賴添加、MyBatisPlusConfig配置文件創(chuàng)建與配置、具體代碼實現(xiàn)(controller、service、dao、xml)、SQL結(jié)果打印、自定義分頁等環(huán)節(jié),此經(jīng)驗總結(jié)供讀者參考學(xué)習(xí)

一、項目結(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)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java?詳解分析鏈表的中間節(jié)點

    Java?詳解分析鏈表的中間節(jié)點

    鏈表是基本的數(shù)據(jù)結(jié)構(gòu)之一,面試題中鏈表占很大一部分,可見鏈表操作是非常重要的。本篇文章我們來探究一下如何獲取鏈表的中間節(jié)點
    2022-01-01
  • Java使用Spire.Doc for Java實現(xiàn)自動化合并Word文檔

    Java使用Spire.Doc for Java實現(xiàn)自動化合并Word文檔

    在日常辦公和軟件開發(fā)中,我們經(jīng)常會遇到需要將多個 Word 文檔合并成一個的需求,本文將聚焦于 Spire.Doc for Java 這一功能強大的庫,為您提供詳細的教程和實用的代碼示例,希望對大家有所幫助
    2025-12-12
  • java mail使用qq郵箱發(fā)郵件的配置方法

    java mail使用qq郵箱發(fā)郵件的配置方法

    本文為你介紹了java mail使用qq郵箱發(fā)郵件的方法,大家參考使用吧
    2014-01-01
  • 基于SpringBoot實現(xiàn)Web應(yīng)用的登錄與退出功能

    基于SpringBoot實現(xiàn)Web應(yīng)用的登錄與退出功能

    登錄與退出功能作為 Web 應(yīng)用中的基礎(chǔ)且重要的組成部分,直接關(guān)系到用戶的安全和隱私保護,所以本文給大家介紹了基于SpringBoot實現(xiàn)Web應(yīng)用的登錄與退出功能,文中有詳細的代碼供大家參考,需要的朋友可以參考下
    2024-04-04
  • Java中超詳細this與super的概念和用法

    Java中超詳細this與super的概念和用法

    這篇文章主要介紹了Java中超詳細this與super的概念和用法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • springboot中ApplicationRunner執(zhí)行順序問題小結(jié)

    springboot中ApplicationRunner執(zhí)行順序問題小結(jié)

    SpringBoot中ApplicationRunner用于應(yīng)用啟動后執(zhí)行初始化任務(wù),通過@Order注解可控制多個Runner的執(zhí)行順序,數(shù)值越小越優(yōu)先,下面就一起來了解一下
    2025-06-06
  • Java JDBC基本使用方法詳解

    Java JDBC基本使用方法詳解

    這篇文章主要介紹了Java JDBC基本使用方法,結(jié)合實例形式詳細分析了java JDBC基本原理、用法及操作注意事項,需要的朋友可以參考下
    2020-04-04
  • Java中的MapStruct實現(xiàn)詳解

    Java中的MapStruct實現(xiàn)詳解

    這篇文章主要介紹了Java中的MapStruct實現(xiàn)詳解,MapStruct 是一個代碼生成器,它基于約定優(yōu)先于配置的方法大大簡化了 JavaBean 類型之間映射的實現(xiàn),生成的映射代碼使用普通方法調(diào)用,需要的朋友可以參考下
    2023-11-11
  • 文件上傳SpringBoot后端MultipartFile參數(shù)報空問題的解決辦法

    文件上傳SpringBoot后端MultipartFile參數(shù)報空問題的解決辦法

    這篇文章主要介紹了文件上傳SpringBoot后端MultipartFile參數(shù)報空問題的解決辦法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • SpringBoot3集成swagger文檔的使用方法

    SpringBoot3集成swagger文檔的使用方法

    本文介紹了Swagger的誕生背景、主要功能以及如何在Spring Boot 3中集成Swagger文檔,Swagger可以幫助自動生成API文檔,實現(xiàn)與代碼同步,并提供交互式測試功能,使用方法包括導(dǎo)入依賴、配置文檔、使用常見注解以及訪問生成的Swagger UI和文檔,感興趣的朋友跟隨小編一起看看吧
    2025-01-01

最新評論

清河县| 宿迁市| 洛隆县| 西乌珠穆沁旗| 陆丰市| 云安县| 涪陵区| 上思县| 拜城县| 祁连县| 汝阳县| 秦皇岛市| 镇坪县| 辽阳市| 利川市| 丰城市| 蓬安县| 沅江市| 闻喜县| 汝城县| 南澳县| 澄江县| 米林县| 策勒县| 宁远县| 林西县| 纳雍县| 荥阳市| 怀宁县| 遵义县| 桃江县| 潞西市| 安仁县| 嘉兴市| 利津县| 弋阳县| 龙里县| 内乡县| 乌拉特前旗| 浮梁县| 临泉县|