ResultMap中的id和result的区别

   <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)的参数名称相同。

猜你喜欢

转载自www.cnblogs.com/1iHu4D0n9/p/9059594.html
今日推荐