guli-mall icon indicating copy to clipboard operation
guli-mall copied to clipboard

老哥的AttrGroupDao.xml中resultMap漏写了

Open huangxiao1234 opened this issue 3 years ago • 1 comments

对应P205 不改的话类型映射会出问题 这里会遇到一个问题,就是方法getAttrGroupWithAttrsBySpuId明明指定了返回类型为List(SpuItemAttrGroupVo) 漏写resultmap的话,返回类型为List(AttGroupEntity)居然不报错?

`

<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.zsy.product.entity.AttrGroupEntity" id="attrGroupMap">
    <result property="attrGroupId" column="attr_group_id"/>
    <result property="attrGroupName" column="attr_group_name"/>
    <result property="sort" column="sort"/>
    <result property="descript" column="descript"/>
    <result property="icon" column="icon"/>
    <result property="catelogId" column="catelog_id"/>
</resultMap>
<resultMap id="spuItemAttrGroupVo" type="com.zsy.product.vo.SpuItemAttrGroupVo">
    <result property="groupName" column="attr_group_name"></result>
    <collection property="attrs" ofType="com.zsy.product.vo.Attr">
        <result column="attr_name" property="attrName"></result>
        <result column="attr_value" property="attrValue"></result>
    </collection>
</resultMap>

<select id="getAttrGroupWithAttrsBySpuId" resultMap="spuItemAttrGroupVo">
    SELECT
        product.spu_id,
        pag.attr_group_id,
        pag.attr_group_name,
        product.attr_id,
        product.attr_name,
        product.attr_value
    FROM
        pms_product_attr_value product
            LEFT JOIN pms_attr_attrgroup_relation paar ON product.attr_id = paar.attr_id
            LEFT JOIN pms_attr_group pag ON paar.attr_group_id = pag.attr_group_id
    WHERE
        product.spu_id = #{spuId}
      AND pag.catelog_id = #{catalogId}

</select>
`

huangxiao1234 avatar May 07 '21 14:05 huangxiao1234

对应P205 不改的话类型映射会出问题 这里会遇到一个问题,就是方法getAttrGroupWithAttrsBySpuId明明指定了返回类型为List(SpuItemAttrGroupVo) 漏写resultmap的话,返回类型为List(AttGroupEntity)居然不报错?

`

<!-- 可根据自己的需求,是否要使用 -->
<resultMap type="com.zsy.product.entity.AttrGroupEntity" id="attrGroupMap">
    <result property="attrGroupId" column="attr_group_id"/>
    <result property="attrGroupName" column="attr_group_name"/>
    <result property="sort" column="sort"/>
    <result property="descript" column="descript"/>
    <result property="icon" column="icon"/>
    <result property="catelogId" column="catelog_id"/>
</resultMap>
<resultMap id="spuItemAttrGroupVo" type="com.zsy.product.vo.SpuItemAttrGroupVo">
    <result property="groupName" column="attr_group_name"></result>
    <collection property="attrs" ofType="com.zsy.product.vo.Attr">
        <result column="attr_name" property="attrName"></result>
        <result column="attr_value" property="attrValue"></result>
    </collection>
</resultMap>

<select id="getAttrGroupWithAttrsBySpuId" resultMap="spuItemAttrGroupVo">
    SELECT
        product.spu_id,
        pag.attr_group_id,
        pag.attr_group_name,
        product.attr_id,
        product.attr_name,
        product.attr_value
    FROM
        pms_product_attr_value product
            LEFT JOIN pms_attr_attrgroup_relation paar ON product.attr_id = paar.attr_id
            LEFT JOIN pms_attr_group pag ON paar.attr_group_id = pag.attr_group_id
    WHERE
        product.spu_id = #{spuId}
      AND pag.catelog_id = #{catalogId}

</select>

`

多谢,确实少写了,没注意到这个地方。

zsy0216 avatar May 08 '21 00:05 zsy0216