Java框架 Mybatis框架7 關聯查詢

2021-08-21 15:18:25 字數 1496 閱讀 2860

首先關於資料庫關聯查詢的相關知識這裡就不贅述了,僅僅說明在mybatis中如何實現,相關知識點推薦:

※乙個 使用者表-訂單表-商品表,三表關聯的查詢案例

兩個需求:1.查詢所有訂單資訊,並關聯出查詢下單的使用者資訊。

2.查詢所有使用者資訊,並關聯出使用者的訂單資訊。

分析:對於需求1,一條訂單資訊,僅對應於一條使用者資訊,所以是乙個一對一關係。而需求2,是乙個一對多關係。

針對於需求建立資料模型後,設計出的資料庫表結構如下,用一張關聯表將orders和user關聯。

測試資料庫表:

關聯表:

關聯表的外來鍵:

※首先針對需求1,可以先寫出sql語句:

select orders.*,user.* from orders,user, where orders.user_id=user.user_id;

由於user表中的user_id是作為orders表的外來鍵的,所以體現在物件關係上,orders實體物件上就需要有user實體物件的引用:

orders:

public class orders
association標籤可以將查詢結果集的剩餘字段對映封裝到關聯的pojo中(即user)

測試:

@test

public void testfindordersanduser() throws exception

}

測試結果:

※對於需求2,通過查詢使用者關聯查詢出訂單資訊,是乙個一對多關係。

對於一對多,我們需要在「一」的實體類中(即user)關聯乙個「多」的實體物件的集合:

public class user
collection標籤可以將關聯查詢的多條記錄對映到pojo的list中

測試:

@test

public void testfinduserandorders() throws exception

}

測試結果:

Mybatis框架 初始Mybatis

1.1.mybatis框架簡介 mybatis是乙個開源的資料持久層框架,它的內部封裝了通過了jdbc訪問資料庫的操作,支援普通的sql查 詢 儲存過程和高階對映,幾乎消除了所有的jdbc 和引數的手工設定以及結果集的檢索。其主要思想是將sql 語句剝離出來,配置在配置檔案中,實現sql的靈活配置 ...

Mybatis框架總結

這裡給出乙個基於 xml 對映語句的示例,它應該可以滿足上述示例中 sqlsession 的呼叫。sqlsessionfactory sqlsessionfactory 一旦被建立就應該在應用的執行期間一直存在,沒有任何理由對它進行清除或重建。使用 sqlsessionfactory 的最佳實踐是在...

Mybatis框架總結

這裡給出乙個基於 xml 對映語句的示例,它應該可以滿足上述示例中 sqlsession 的呼叫。sqlsessionfactory sqlsessionfactory 一旦被建立就應該在應用的執行期間一直存在,沒有任何理由對它進行清除或重建。使用 sqlsessionfactory 的最佳實踐是在...