mybatis三表關(guān)聯(lián)查詢 mybatis聯(lián)合多表查詢resulttype怎么寫?
mybatis聯(lián)合多表查詢resulttype怎么寫?mybatis中resulttype和resultmap之間的差異在mybatis中選擇和映射查詢時,返回類型可以是resulttype或resu
mybatis聯(lián)合多表查詢resulttype怎么寫?
mybatis中resulttype和resultmap之間的差異
在mybatis中選擇和映射查詢時,返回類型可以是resulttype或resultmap。Resulttype直接表示返回類型(對應(yīng)于我們模型對象中的實體),resultmap表示外部resultmap(預(yù)先定義dB和模型之間的隱式鍵-->value關(guān)系),但是Resulttype和resultmap不能同時存在。
mybatis執(zhí)行查詢映射時,實際上,查詢的每個屬性都放在相應(yīng)的映射中,其中鍵是屬性名稱,值是其對應(yīng)的值。
①當提供的return type屬性為resulttype時,mybatis會在map中取出key-value對,賦給resulttype指定的對象的相應(yīng)屬性。因此,實際上,mybatis中每個查詢映射的返回類型都是resultmap。只有當提供的返回類型屬性是resulttype時,mybatis才會自動將相應(yīng)的值賦給resulttype指定的對象的屬性。
②當提供的返回類型為resultmap時,由于map不能很好地表示域模型,我們需要進一步將其轉(zhuǎn)換為相應(yīng)的對象,這在復(fù)雜的查詢中往往非常有用。