Mybatis多表关联查询之三表查询

在开发中经常用到多表查询,这里演示三表查询的情况。
业务逻辑:购物车订单的逻辑
该逻辑共涉及到三张表
1. order表 就是订单表 记录 订单人的信息、订单地址、订单号、订单的总价, 一条订单记录可能会有多个商品所以 有创建了一个订单详情表
这里写图片描述
2. 订单详情表记录、订单中一种商品的总价,数量
这里写图片描述
3. 商品表、记录商品的详情
这里写图片描述
要求展示的是订单记录:
那么就用到了多表查询,同时在这三个表中查询
订单与订单详情是1对多的关系 订单详情与商品是1对1关系,在resultMap中要这样写

<resultMap id="orderResultMap" type="com.hd.entity.Order">
    <id column="orderId" jdbcType="INTEGER" property="id" />
    <result column="loginName" jdbcType="VARCHAR" property="loginName" />
    <result column="userAddress" jdbcType="VARCHAR" property="userAddress" />
    <result column="allCost" jdbcType="REAL" property="cost" />
    <result column="serialnumber" jdbcType="VARCHAR" property="serialnumber" />
    <collection property="orderDetailList" ofType="com.hd.entity.OrderDetail" >
        <result column="orderDetailId" property="id"></result>
        <result column="quantity" property="quantity"></result>
        <result column="cost" property="cost"></result>
        <association property="product" javaType="com.hd.entity.Product">
          <id column="productId" property="id"></id>
          <id column="fileName" property="fileName"></id>
        </association>
    </collection>
  </resultMap>
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值