MyBatis知識七ResultMap描述

ResultMap是MyBatis中最複雜也是最強大的元素,用來描述如何從數據庫結果集中來加載對象。外部 resultMap 的命名引用,結果集的映射是 MyBatis 最強大的特性,對其有一個很好的理解的話,許多複雜映
射的情形都能迎刃而解。使用 resultMap 或 resultType,但不能同時使用。
這裏只是做一個最常用的描述,具體描述還是希望能夠自己去看API文檔,畢竟那裏纔是最詳細的。

這裏寫圖片描述

resultMap:
使用association和collection完成一對一和一對多高級映射(對結果有特殊的映射要求)。

association
作用:
將關聯查詢信息映射到一個pojo對象中。
場合:
爲了方便查詢關聯信息可以使用association將關聯訂單信息映射爲用戶對象的pojo屬性中,比如:查詢訂單及關聯用戶信息。
使用resultType無法將查詢結果映射到pojo對象的pojo屬性中,根據對結果集查詢遍歷的需要選擇使用resultType還是resultMap。

collection:
作用:
將關聯查詢信息映射到一個list集合中。
場合:
爲了方便查詢遍歷關聯信息可以使用collection將關聯信息映射到list集合中,比如:查詢用戶權限範圍模塊及模塊下的菜單,可使用collection將模塊映射到模塊list中,將菜單列表映射到模塊對象的菜單list屬性中,這樣的作的目的也是方便對查詢結果集進行遍歷查詢。
如果使用resultType無法將查詢結果映射到list集合中。

具體例子看上篇MyBatis關係映射

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章