【MyBatis】@Results 关联查询时,关联外键id变成

2021-05-08  本文已影响0人  印比八方来
@Results({
            @Result(property="id",column="id"),
            @Result(property="skus", column="id", many=@Many(select="com.heyicare.mysql.shop.mapper.OrderMapper.getSkusWithMsgOfOrder",fetchType= FetchType.LAZY))
    })

平时在进行关联查询时,更多是使用主键对其他表进行关联查询,所以上面的写法不会出现问题。

这一次在其他表里,需要使用外键查询如:

 @Results({
            @Result(property="id",column="id"),
            @Result(property="skus", column="orderid", many=@Many(select="com.heyicare.mysql.shop.mapper.OrderMapper.getSkusOfOrder",fetchType= FetchType.LAZY))
    })

通过表中的orderid对sku表进行关联查询,其他结果正常,发现orderid的值成了空值,需改为:

 @Results({
            @Result(property="orderid",column="orderid"),
            @Result(property="skus", column="orderid", many=@Many(select="com.heyicare.mysql.shop.mapper.OrderMapper.getSkusOfOrder",fetchType= FetchType.LAZY))
    })

对关联字段映射赋值

上一篇 下一篇

猜你喜欢

热点阅读