欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MybatisPlus將自定義的sql列表查詢返回改為分頁查詢

 更新時間:2024年04月15日 08:29:19   作者:Big-Peng  
本文主要介紹了MybatisPlus將自定義的sql列表查詢返回改為分頁查詢,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

問題描述

在開發(fā)過程中在 mapper.xml 文件中自定義了一個 sql 查詢列表的 select 語句,但是由于前端需要的是分頁數(shù)據,需要在后端將列表查詢改成分頁查詢

修改前

1. 查詢數(shù)據類型

@Data
public class OppRelMoveWrapper implements BaseData {
    /**
     * ID
     */
    private Long id;

    /**
     * 商機ID
     */
    private Long oppId;

    /**
     * RELATIONSHIP
     */
    private String relationship;

    /**
     * 關系評價附件
     */
    private String attachmentRel;

    /**
     * CHIEF_RECORD
     */
    private String chiefRecord;

    /**
     * 首席代表動態(tài)記錄附件
     */
    private String attachmentChief;

    /**
     * ORDINARY_RECORD
     */
    private String ordinaryRecord;

    /**
     * 普通動態(tài)記錄附件
     */
    private String attachmentOrdinary;

    /**
     * 錄入人
     */
    private Long createStaff;

    /**
     * 錄入時間
     */
    private Date createDate;

    /**
     * 更新時間
     */
    private Date updateDate;
}

2. mapper定義

@Mapper
public interface OppRelationshipInfoMoveMapper extends BaseMapper<OppRelationshipInfoMove> {
    
    List<OppRelMoveWrapper> queryMoveClientList(@Param("query") OppRelMoveQuery query);
}

3. xml文件定義

該語句查詢的是一個返回數(shù)據類型為OppRelationshipInfoMoveMap的列表

  <resultMap type="com.wrapper.OppRelMoveWrapper"
               id="OppRelationshipInfoMoveMap">
        <result property="id" column="ID" jdbcType="INTEGER"/>
        <result property="oppId" column="OPP_ID" jdbcType="INTEGER"/>
        <result property="relationship" column="RELATIONSHIP" jdbcType="VARCHAR"/>
        <result property="attachmentRel" column="attachment_rel" jdbcType="VARCHAR"/>
        <result property="chiefRecord" column="CHIEF_RECORD" jdbcType="VARCHAR"/>
        <result property="attachmentChief" column="attachment_chief" jdbcType="VARCHAR"/>
        <result property="ordinaryRecord" column="ORDINARY_RECORD" jdbcType="VARCHAR"/>
        <result property="attachmentOrdinary" column="attachment_ordinary" jdbcType="VARCHAR"/>
        <result property="createStaff" column="CREATE_STAFF" jdbcType="INTEGER"/>
        <result property="createDate" column="CREATE_DATE" jdbcType="TIMESTAMP"/>
        <result property="updateDate" column="UPDATE_DATE" jdbcType="TIMESTAMP"/>
    </resultMap>

    <select id="queryMoveClientList" resultMap="OppRelationshipInfoMoveMap">
        SELECT
        ID,
        OPP_ID,
        RELATIONSHIP,
        attachment_rel,
        CHIEF_RECORD,
        attachment_chief,
        ORDINARY_RECORD,
        attachment_ordinary,
        CREATE_STAFF,
        CREATE_DATE,
        UPDATE_DATE
        FROM opp_relationship_info_move
        WHERE 1=1
        <if test="query.createDate != null and query.createDate != ''">
            AND DATE_FORMAT(CREATE_DATE, '%Y-%m-%d') = #{query.createDate}
        </if>
        <if test="query.updateDate != null and query.updateDate != ''">
            AND DATE_FORMAT(UPDATE_DATE, '%Y-%m-%d') = #{query.updateDate}
        </if>
        <if test="query.oppId != null and query.oppId != ''">
            AND OPP_ID = #{query.oppId}
        </if>
        ORDER BY CREATE_DATE DESC
    </select>

4. 函數(shù)使用

List<OppRelMoveWrapper> moveWrapperList = oppRelationshipInfoMoveMapper.queryMoveClientList(query);

修改后

修改成分頁查詢比較簡單,直接將 mapper 的查詢方法修改即可

1. 修改mapper

將函數(shù)返回的數(shù)據改成 Page類型

@Mapper
public interface OppRelationshipInfoMoveMapper extends BaseMapper<OppRelationshipInfoMove> {
    Page<OppRelMoveWrapper> queryMoveClientList(Page<Object> page, @Param("query") OppRelMoveQuery query);
}

2. 函數(shù)使用

注意: 構造Page時里面的 pageNum 和 pageSize 一定要存在!??! 否則獲得的 Page 中的 records 為空?。?!

  Page<OppRelMoveWrapper> moveWrapperPage = oppRelationshipInfoMoveMapper.queryMoveClientList(
                new Page(query.getPage(), query.getPageSize(), true), query);

結語

很香的一個方法,使我的列表查詢變成分頁查詢。

到此這篇關于MybatisPlus將自定義的sql列表查詢返回改為分頁查詢的文章就介紹到這了,更多相關MybatisPlus自定義sql列表查詢內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Java Collections集合繼承結構圖_動力節(jié)點Java學院整理

    Java Collections集合繼承結構圖_動力節(jié)點Java學院整理

    這篇文章主要介紹了Java Collections集合繼承結構圖_動力節(jié)點Java學院整理,需要的朋友可以參考下
    2017-04-04
  • Java生成二維碼的實現(xiàn)方式匯總

    Java生成二維碼的實現(xiàn)方式匯總

    本文將基于Spring Boot介紹兩種生成二維碼的實現(xiàn)方式,一種是基于Google開發(fā)工具包,另一種是基于Hutool來實現(xiàn),下面我們將基于Spring Boot,并采用兩種方式實現(xiàn)二維碼的生成,對于每一種方式還提供兩種類型的二維碼返回形式,需要的朋友可以參考下
    2023-09-09
  • 詳解Java編程的Observer觀察者設計模式

    詳解Java編程的Observer觀察者設計模式

    這篇文章主要介紹了Java編程的Observer觀察者設計模式,觀察者模式定義了一個一對多的依賴關系,讓一個或多個觀察者對象監(jiān)察一個主題對象,需要的朋友可以參考下
    2016-01-01
  • JDK1.8中的ConcurrentHashMap源碼分析

    JDK1.8中的ConcurrentHashMap源碼分析

    這篇文章主要介紹了JDK1.8中的ConcurrentHashMap源碼分析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04
  • Spring使用Configuration注解管理bean的方式詳解

    Spring使用Configuration注解管理bean的方式詳解

    在Spring的世界里,Configuration注解就像是一位細心的園丁,它的主要職責是在這個繁花似錦的園子里,幫助我們聲明和管理各種各樣的bean,本文給大家介紹了在Spring中如何優(yōu)雅地管理你的bean,需要的朋友可以參考下
    2024-05-05
  • spring事務異?;貪L實例解析

    spring事務異?;貪L實例解析

    這篇文章主要介紹了spring事務異常回滾實例解析,具有一定借鑒價值,需要的朋友可以參考下
    2018-01-01
  • 初探Java中的泛型

    初探Java中的泛型

    這篇文章主要介紹了Java中泛型的相關資料,幫助大家更好的理解和學習Java,感興趣的朋友可以了解下
    2020-08-08
  • RabbitMQ使用SpringAMQP的配置方法

    RabbitMQ使用SpringAMQP的配置方法

    這篇文章主要介紹了RabbitMQ使用SpringAMQP的配置方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2024-03-03
  • SpringBoot如何使用注解進行XSS防御

    SpringBoot如何使用注解進行XSS防御

    在SpringBoot中,可以通過自定義@XSS注解和實現(xiàn)XSSValidator類來防御XSS攻擊,此方法適用于GET和POST請求,通過在方法參數(shù)或實體類屬性上添加@XSS注解,并結合@Valid或@Validated注解使用,有效攔截潛在的XSS腳本,保障應用安全
    2024-11-11
  • Java中finalize()詳解及用法

    Java中finalize()詳解及用法

    這篇文章主要介紹了Java中finalize()詳解及用法的相關資料,final是Java的關鍵字,它所表示的是“這部分是無法修改的”,需要的朋友可以參考下
    2017-03-03

最新評論