ResultMap和ResultType的區(qū)別
使用mybatis進行數(shù)據(jù)庫連接操作時對于SQL語句返回結(jié)果的處理通常有兩種方式,一種就是resultType;另一種就是resultMap:
1、resultType:當(dāng)使用resultType做SQL語句返回結(jié)果類型處理時,對于SQL語句查詢出的字段在相應(yīng)的pojo中必須有和它相同的字段對應(yīng),而resultType中的內(nèi)容就是pojo在本項目中的位置。
因此對于單表查詢的話用resultType是最合適的
2、resultMap:當(dāng)使用resultMap做SQL語句返回結(jié)果類型處理時,通常需要在mapper.xml中定義resultMap進行pojo和相應(yīng)表字段的對應(yīng)。
resultMap對于一對一表連接的處理方式通常為在主表的pojo中添加嵌套另一個表的pojo,然后在mapper.xml中采用association節(jié)點元素進行對另一個表的連接處理
3、resultType是直接表示返回類型的(對應(yīng)著我們的model對象中的實體)
resultMap則是對外部ResultMap的引用(提前定義了db和model之間的隱射key–>value關(guān)系),但是resultType跟resultMap不能同時存在。