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

MyBatis-Plus實(shí)現(xiàn)多表聯(lián)查的方法實(shí)戰(zhàn)

 更新時(shí)間:2023年07月12日 09:25:34   作者:DustHeart(  
這篇文章主要給大家介紹了關(guān)于MyBatis-Plus實(shí)現(xiàn)多表聯(lián)查的方法,MyBatis Plus是一款針對(duì)MyBatis框架的增強(qiáng)工具,它提供了很多方便的方法來(lái)實(shí)現(xiàn)多表聯(lián)查,需要的朋友可以參考下

前言

收獲大佬封裝的一個(gè)jar包,可以支持MyBatis-Plus多表聯(lián)查,特此分享。

一、引依賴

注意: mybatis plus version >= 3.4.0

<dependency>
    <groupId>com.github.yulichang</groupId>
    <artifactId>mybatis-plus-join</artifactId>
    <version>1.2.4</version>
</dependency>

二、使用方法

  • mapper繼承MPJBaseMapper (必選)
  • service繼承MPJBaseService (可選)
  • serviceImpl繼承MPJBaseServiceImpl (可選)

三、(實(shí)戰(zhàn))多表查詢

MPJLambdaWrapper<Map> mpjLambdaWrapper = new MPJLambdaWrapper();
mpjLambdaWrapper.select(ChatRecord::getId,ChatRecord::getRedMoney)
    .select(OfShopMembers::getUsablePoint)
    .select(ChatMultiList::getName)
	.leftJoin(OfShopMembers.class,OfShopMembers::getId,ChatRecord::getId)
	.leftJoin(ChatMultiList.class,ChatMultiList::getId,ChatRecord::getMultiId)
	.eq(ChatRecord::getMemberId,3213);
List list = chatRecordMybatisJoinMapper.selectJoinList(Map.class, mpjLambdaWrapper);

對(duì)應(yīng)查詢語(yǔ)句

SELECT 
	t.id,
	t.red_money,
	t1.username,
	t2.name 
FROM 
	chat_record t 
LEFT JOIN of_shop_members t1 ON (t1.id = t.id) 
LEFT JOIN chat_multi_list t2 ON (t2.id = t.multi_id) 
WHERE 
	(t.member_id = 3213)

參數(shù)說(shuō)明

1、select:表示查詢的指定字段,一個(gè)select只能查一個(gè)表的

2、leftJoin:

  • 第一個(gè)參數(shù): 參與連表的實(shí)體類class
  • 第二個(gè)參數(shù): 連表的ON字段,這個(gè)屬性必須是第一個(gè)參數(shù)實(shí)體類的屬性
  • 第三個(gè)參數(shù): 參與連表的ON的另一個(gè)實(shí)體類屬性

3、默認(rèn)主表別名是t,其他的表別名以先后調(diào)用的順序使用t1,t2,t3…

四、(實(shí)戰(zhàn))多表分頁(yè)查詢

MPJLambdaWrapper<Map> mpjLambdaWrapper = new MPJLambdaWrapper();
        mpjLambdaWrapper.select(ChatRecord::getId,ChatRecord::getRedMoney)
            .select(OfShopMembers::getUsablePoint)
            .select(ChatMultiList::getName)
            .leftJoin(OfShopMembers.class,OfShopMembers::getId,ChatRecord::getId)
            .leftJoin(ChatMultiList.class,ChatMultiList::getId,ChatRecord::getMultiId)
            .eq(ChatRecord::getMemberId,3213)
            .orderByDesc(ChatRecord::getAddTime);
        Page page = new Page(1,2);
        IPage<Map> mapIPage = chatRecordMybatisJoinMapper.selectJoinPage(page, Map.class, mpjLambdaWrapper);

對(duì)應(yīng)查詢語(yǔ)句

SELECT 
	t.id,
	t.red_money,
	t1.usable_point,
	t2.name 
FROM 
	chat_record t 
LEFT JOIN of_shop_members t1 ON (t1.id = t.id) 
LEFT JOIN chat_multi_list t2 ON (t2.id = t.multi_id)
WHERE 
	(t.member_id = 3213) 
ORDER BY 
	t.add_time 
DESC 
LIMIT 2

總結(jié)

到此這篇關(guān)于MyBatis-Plus實(shí)現(xiàn)多表聯(lián)查的文章就介紹到這了,更多相關(guān)MyBatis-Plus多表聯(lián)查內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制

    Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制

    這篇文章主要介紹了Java進(jìn)階教程之運(yùn)行時(shí)類型識(shí)別RTTI機(jī)制,在Java運(yùn)行時(shí),RTTI維護(hù)類的相關(guān)信息,比如多態(tài)(polymorphism)就是基于RTTI實(shí)現(xiàn)的,需要的朋友可以參考下
    2014-09-09
  • java中BigDecimal類型比較大小和絕對(duì)值計(jì)算方式

    java中BigDecimal類型比較大小和絕對(duì)值計(jì)算方式

    這篇文章主要介紹了java中BigDecimal類型比較大小和絕對(duì)值計(jì)算方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Java 基礎(chǔ)詳解(泛型、集合、IO、反射)

    Java 基礎(chǔ)詳解(泛型、集合、IO、反射)

    下面小編就為大家?guī)?lái)一篇Java 基礎(chǔ)詳解(泛型、集合、IO、反射)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-10-10
  • Spring集成Web環(huán)境的實(shí)例詳解

    Spring集成Web環(huán)境的實(shí)例詳解

    這篇文章主要介紹了Spring集成Web環(huán)境,本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Java 日期轉(zhuǎn)換詳解及實(shí)例代碼

    Java 日期轉(zhuǎn)換詳解及實(shí)例代碼

    這篇文章主要介紹了Java 日期轉(zhuǎn)換詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • Java跳過(guò)證書(shū)訪問(wèn)HTTPS詳細(xì)代碼示例

    Java跳過(guò)證書(shū)訪問(wèn)HTTPS詳細(xì)代碼示例

    在訪問(wèn)HTTPS網(wǎng)站時(shí),Java會(huì)默認(rèn)檢查SSL證書(shū)是否有效,如果證書(shū)無(wú)效,則會(huì)阻止訪問(wèn),這篇文章主要給大家介紹了關(guān)于Java跳過(guò)證書(shū)訪問(wèn)HTTPS的相關(guān)資料,需要的朋友可以參考下
    2024-02-02
  • Springmvc異常映射2種實(shí)現(xiàn)方法

    Springmvc異常映射2種實(shí)現(xiàn)方法

    這篇文章主要介紹了Springmvc異常映射2種實(shí)現(xiàn)方法以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。,需要的朋友可以參考下
    2020-05-05
  • Spring Boot Admin監(jiān)控服務(wù)如何使用

    Spring Boot Admin監(jiān)控服務(wù)如何使用

    這篇文章主要介紹了Spring Boot Admin監(jiān)控服務(wù)如何使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • springcloud 熔斷器Hystrix的具體使用

    springcloud 熔斷器Hystrix的具體使用

    本篇文章主要介紹了springcloud 熔斷器Hystrix的具體使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • Java運(yùn)算符的常見(jiàn)問(wèn)題與用法小結(jié)

    Java運(yùn)算符的常見(jiàn)問(wèn)題與用法小結(jié)

    這篇文章主要介紹了Java運(yùn)算符,結(jié)合實(shí)例形式總結(jié)分析了Java各種常見(jiàn)運(yùn)算符,包括算術(shù)運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符等相關(guān)功能、原理與使用技巧,需要的朋友可以參考下
    2020-04-04

最新評(píng)論