select元素有很多屬性(這里說用的比較多的):
id:命名空間唯一標識,可以被用來引用這條語句
parameterType:將會傳入這條語句的參數類的完全限定名或者別名
resultType:從這條語句要返回的期望類型的類的完全限定名或別名(這里注意下集合類型,應該是集合可以包含的類型,不能是集合本身),重要:使用resultType或resultMap,但不能同時使用。
resultMap:命名引用外部的resultMap,其名稱要和外部的resultMap元素的ID名稱一致,用於映射其結果到實體類指定對象中。
那么什么時候我們知道使用resultMap,什么時候又使用resultType呢?
①當去select一張表時,可以使用resultType,這些情況下,MyBatis會在幕后自動創建一個ReusltMap,基於屬性名來映射到JavaBean屬性上
②所以在使用resultMap時,就必須要寫上resultMap相對應的xml
③為了防止我們開發出錯,在沒有特別要求的情況下,column名可以完全和property名稱一致,否則當我們沒有對應上的時候,數據庫匹配不到,會將某某參數值變為大寫,導致我們本來獲取小寫的參數名,結果沒有獲取到,后台報錯