Mybatis實現一對多查詢

2022-05-09 03:48:09 字數 934 閱讀 8120

需求和使用情況說明

object one :

//基本屬性

private listlist;

//省略set and get方法

說明:物件一和物件二在不同的表中,但是物件一的主鍵是物件二的外來鍵,因此物件一和物件二的對應關係為:1:n

查詢物件一的同時可以把物件二中的所有和物件一的關聯的物件的資訊查詢出來

因此可以使用 mybatis中的一對多查詢,查詢的sql語法牽涉到外連線

結合具體例項

建立對應的實體類, tenant 對應資料庫表為tenant   user對應資料庫中表為user

1

public

class

tenant

public class user

建立對應的mybatis的xml檔案

首先:對應返回型別 resultmap

//租戶對應返回resultmap,定義為基礎返回資料型別

//擴充套件resultmap,能夠接收返回的帶有users的map

編寫查詢的sql語句

select t.*,

u.id as members_id, u.name as members_name

from tenant t

/*外連線-獲取租戶下成員*/

left outer join user u on u.tenant_id = t.id

where t.id = #

個人簡答總結,若有不足之處見諒

mybatis 一對多查詢

查詢訂單及訂單明細的資訊。這裡怎麼體現了一對多 這裡orders的id出現重複的記錄,無法對映到orders類中 collection 對關聯查詢到多條記錄對映到集合物件中 4 查詢訂單 關聯使用者 及訂單明細 public listfindordersandorderdetailresultmap...

mybatis 一對多查詢

與phoenix不同,在mysql中查詢的結果不會按照id預設排序。所以如果頁面有隱含的順序要求 兩次呼叫,列表順序不變 此時千萬不要使用set,而應該使用list。接下來進入正題 直接上 public class userpublic class order 根據id查詢使用者,並且查詢出該使用者...

Mybatis一對多查詢

mybatis中有兩個標籤,association和collection,這兩個標籤都有兩種用法 一種是如下方式一可以與查詢繫結在一起,使用這種方式association和collection的效果是一樣的,都可以進行一對多和一對一的查詢,但這種方式會進行n m次查詢,在資料量非常大的情況下不推薦使...