<resultMap id = "cargo" type="cargo"> <id property="cargoId" column="cargo_id"/> <result property="cargoTypeId" column="cargo_type_id"/> <result property="gross" column="gross"/> <result property="containerId" column="container_id"/> <result property="valid" column="valid"/> </resultMap>
resultMap 元素定義了一個cargo,它的屬性id代表它的標識,type代表使用哪種類作為其映射的類,可以是別名或者全限定名。
<typeAlias alias="cargo" type="com.myharbour.pojo.Cargo"/>
子元素id代表resultMap的主鍵,而result代表其屬性。
在自定義的resultMap中第一列通常是主鍵id,那么id 和result有什么區別呢?
id和result都是映射單列值到一個屬性或字段的簡單數據類型。
唯一不同的是,id是作為唯一標識的,當和其他對象實例對比的時候,這個id很有用,尤其是應用到緩存和內嵌的結果映射。
property: 映射數據庫列的字段或屬性,如果JavaBean的屬性與給定的名稱匹配,就會使用匹配的名字,否則MyBatis將搜索給定名稱的字段,兩種情況下你都可以使用逗點的屬性形式,比如,你可以映射到“”username:,也可以映射到“address.street.number”
column:數據庫的列名或者列標簽別名,與傳遞個resultSet.getString(columnName)的參數名稱相同。
