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

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

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

問題描述

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

修改前

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

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

    /**
     * 商機(jī)ID
     */
    private Long oppId;

    /**
     * RELATIONSHIP
     */
    private String relationship;

    /**
     * 關(guān)系評(píng)價(jià)附件
     */
    private String attachmentRel;

    /**
     * CHIEF_RECORD
     */
    private String chiefRecord;

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

    /**
     * ORDINARY_RECORD
     */
    private String ordinaryRecord;

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

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

    /**
     * 錄入時(shí)間
     */
    private Date createDate;

    /**
     * 更新時(shí)間
     */
    private Date updateDate;
}

2. mapper定義

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

3. xml文件定義

該語句查詢的是一個(gè)返回?cái)?shù)據(jù)類型為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ù)據(jù)改成 Page類型

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

2. 函數(shù)使用

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

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

結(jié)語

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

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

相關(guān)文章

  • mybatis連接mysql的實(shí)現(xiàn)過程

    mybatis連接mysql的實(shí)現(xiàn)過程

    通過配置Maven的pom文件,可以簡化MyBatis連接數(shù)據(jù)庫的過程,免去手動(dòng)下載和導(dǎo)入各種依賴包的麻煩,本文介紹了如何利用Maven導(dǎo)入MyBatis及其他相關(guān)依賴,如Junit、MySQL連接驅(qū)動(dòng)、Druid連接池和Dbutil等,以簡化數(shù)據(jù)庫操作和測試
    2024-10-10
  • SpringBoot修改yml配置和加載順序規(guī)則的示例詳解

    SpringBoot修改yml配置和加載順序規(guī)則的示例詳解

    這篇文章主要為大家詳細(xì)介紹了SpringBoot如何修改yml配置和加載順序規(guī)則,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-08-08
  • 使用Java將實(shí)體類轉(zhuǎn)換為JSON并輸出到控制臺(tái)的完整過程

    使用Java將實(shí)體類轉(zhuǎn)換為JSON并輸出到控制臺(tái)的完整過程

    在軟件開發(fā)的過程中,Java是一種廣泛使用的編程語言,而在眾多應(yīng)用中,數(shù)據(jù)的傳輸和存儲(chǔ)經(jīng)常需要使用JSON格式,用Java將實(shí)體類轉(zhuǎn)換為JSON格式并輸出其實(shí)不難,只需掌握幾個(gè)步驟就可以做到!接下來,我們來看看這一過程究竟是如何實(shí)現(xiàn)的,感興趣的小伙伴跟著小編一起來看看吧
    2025-05-05
  • 聊聊Java的switch為什么不支持long

    聊聊Java的switch為什么不支持long

    這篇文章主要介紹了Java的switch為什么不支持long,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java抽象類概念與用法實(shí)例分析

    Java抽象類概念與用法實(shí)例分析

    這篇文章主要介紹了Java抽象類概念與用法,結(jié)合實(shí)例形式分析了java抽象類的概念、方法、特點(diǎn)及使用方法,需要的朋友可以參考下
    2018-02-02
  • Mybatis和其他主流框架的整合使用過程詳解

    Mybatis和其他主流框架的整合使用過程詳解

    MyBatis最初是Apache的一個(gè)開源項(xiàng)目iBatis,?2010年6月這個(gè)項(xiàng)目由Apache?Software?Foundation遷移到了Google?Code,這篇文章主要介紹了Mybatis和其他主流框架的整合使用,需要的朋友可以參考下
    2023-11-11
  • SpringBoot文件上傳控制及Java 獲取和判斷文件頭信息

    SpringBoot文件上傳控制及Java 獲取和判斷文件頭信息

    這篇文章主要介紹了SpringBoot文件上傳控制的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2017-12-12
  • Java開發(fā)者不能忽略的11種return寫法

    Java開發(fā)者不能忽略的11種return寫法

    今天,我們不講設(shè)計(jì)模式、不談八股文,結(jié)合實(shí)際項(xiàng)目踩坑經(jīng)歷,帶你從?11?個(gè)高頻場景,拆解?return?的優(yōu)雅用法與隱藏陷阱,希望對(duì)大家有所幫助
    2025-08-08
  • IDEA中配置操作Git的詳細(xì)圖文教程

    IDEA中配置操作Git的詳細(xì)圖文教程

    這篇文章給大家詳細(xì)介紹在IDEA中配置Git,IDEA中操作Git的詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2020-10-10
  • java arrayList遍歷的四種方法及Java中ArrayList類的用法

    java arrayList遍歷的四種方法及Java中ArrayList類的用法

    arraylist是動(dòng)態(tài)數(shù)組,它具有三個(gè)好處分別是:動(dòng)態(tài)的增加和減少元素 、實(shí)現(xiàn)了ICollection和IList接口、靈活的設(shè)置數(shù)組的大小,本文給大家介紹java arraylist遍歷及Java arraylist 用法,感興趣的朋友一起學(xué)習(xí)吧
    2015-11-11

最新評(píng)論

保定市| 武城县| 太仆寺旗| 金平| 女性| 宜章县| 曲周县| 嘉定区| 武穴市| 五华县| 雅安市| 泰兴市| 宁远县| 赤城县| 六盘水市| 内丘县| 郧西县| 五莲县| 兴宁市| 韶关市| 青海省| 喜德县| 遵义市| 雷波县| 门头沟区| 龙胜| 桐梓县| 高阳县| 全南县| 萨迦县| 大足县| 黑河市| 松潘县| 安阳市| 鹤山市| 陇西县| 沙洋县| 体育| 马尔康县| 延长县| 芦溪县|