[转]MyBatis中resultType与resultMap区别
MyBatis中關(guān)于resultType和resultMap的具體區(qū)別如下:
MyBatis中在查詢進(jìn)行select映射的時(shí)候,返回類型可以用resultType,也可以用resultMap。
resultType是直接表示返回類型的(對(duì)應(yīng)著我們的model對(duì)象中的實(shí)體);
resultMap則是對(duì)外部ResultMap的引用(提前定義了db和model之間的隱射key-->value關(guān)系);
resultType跟resultMap不能同時(shí)存在。
在MyBatis進(jìn)行查詢映射時(shí),其實(shí)查詢出來(lái)的每一個(gè)屬性都是放在一個(gè)對(duì)應(yīng)的Map里面的,其中鍵是列名,值則是其對(duì)應(yīng)的值。
1.當(dāng)提供的返回類型屬性是resultType時(shí),MyBatis會(huì)將Map里面的鍵值對(duì)取出賦給resultType所指定的對(duì)象對(duì)應(yīng)的屬性。所以其實(shí)MyBatis的每一個(gè)查詢映射的返回類型都是ResultMap,只是當(dāng)提供的返回類型屬性是resultType的時(shí)候,MyBatis會(huì)自動(dòng)把對(duì)應(yīng)的值賦給resultType所指定對(duì)象的屬性。
2.當(dāng)提供的返回類型是resultMap時(shí),因?yàn)镸ap不能很好表示領(lǐng)域模型,就需要自己再進(jìn)一步的把它轉(zhuǎn)化為對(duì)應(yīng)的對(duì)象,這常常在復(fù)雜查詢中很有作用。
轉(zhuǎn)載于:https://www.cnblogs.com/atai/p/7615713.html
總結(jié)
以上是生活随笔為你收集整理的[转]MyBatis中resultType与resultMap区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: web技术应用分享
- 下一篇: 1005. 继续(3n+1)猜想 (25