主信息:訂單信息
從屬信息:用戶信息
使用resultMap映射結果,並定義壹個特殊的resultMap來映射壹對壹查詢的結果。
屬性:訂單對象的用戶屬性。
Javatype:對應於用戶屬性的類型。
關聯:意味著映射壹對壹的相關查詢。
當resultMap用於結果映射時,具體來說,使用關聯來完成相關查詢的映射,並將相關查詢信息映射到pojo對象中。
查詢所有用戶信息和與用戶相關的訂單信息。
主信息:用戶信息
從屬信息:訂單信息
在壹對多的使用中,只有resultMap可用於結果映射。
集合標簽:定義壹對多關聯的結果映射。
property =“orders”:關聯查詢的結果集存儲在用戶對象的哪個屬性中。
of type =“com . demo . my batis . po . order“:指定關聯查詢的結果集中的對象類型,即列表中的對象類型。您可以在這裏使用別名或完全限定名。
根據關聯對象查詢的select語句的執行時序,MyBatis可以分為三種類型:直接加載、侵入式加載和深度延遲加載。
延遲加載策略需要通過Mybatis全局配置文件中的標簽進行設置。
對主裝載對象執行select語句後,立即對關聯對象執行select查詢。
在主加載對象上執行選擇查詢時,不會執行關聯對象上的查詢。但是當您想要訪問主加載對象的屬性(不是關聯對象的屬性)時,關聯對象的選擇查詢將立即執行。
在主加載對象上執行選擇查詢時,不會執行關聯對象上的查詢。當要訪問主加載對象的詳細信息時,將不會執行對相關對象的查詢。相關對象的查詢僅在相關對象的細節被訪問時執行。