技术依赖:如无特殊说明;所有配置和技术选型均采用Ruoyi-vue快速开发框架

    SpringBoot
    Mybatis
    Mysql 
    vue-element ui

说明:一个订单中有多种商品;所以有一个订单表有一个订单详情表

说明问题:

企业微信截图_20240920103124.png

表结构设计:
订单表:order

     order_id 订单表ID
     

订单详情表:order_items

    id :详情表ID
    order_id:订单表ID
    goods_id:商品ID

增加订单:
Controller层代码:

mybatis xml的写法

collection主要是应对表关系是一对多的情况
property:属性
javaType:

<resultMap>
     <result property="orderId"    column="order_id"    />
     <result property="goodsAmount"    column="goods_amount"    />
     <collection property="orderItems" column="dept_id" javaType="java.util.List" resultMap="orderItemsResult" />
</resultMap>

<resultMap id="YshopOrderItemsResult" type="orderItems">
    <id  property="id"  column="id" />
    <result property="goodsId" column="goods_id"/>
    <result property="price" column="price"/>
</resultMap>

也可以这样写

 <resultMap type="YshopGoodsType" id="YshopGoodsTypeResult">
    <result property="id"    column="id"    />
    <result property="name"    column="name"    />
    <result property="params"    column="params"    />
    <collection property="students" ofType="Student">
        <result property="id" column="sid"/>
        <result property="name" column="sname"/>
        <result property="tid" column="tid"/>
    </collection>
    <collection property=""></collection>
</resultMap>

SQL语句

前端返回一条详情信息

 /*java代码*/
 public Order selectById()
  select * from order left join order_items on order.id=order_items.order_id where order.id=100;

方式二:mybatis 一对多查询方式二

相关文章:

    《事务的处理》
     https://blog.csdn.net/weixin_46645338/article/details/123987406
     https://blog.csdn.net/weixin_45877245/article/details/119821218

[1]:

标签: none

相关阅读

  • 测试信息
  • 开发商:阿里巴巴
  • 版本号:1.0
  • 配色:(企业家)” 推选活动结果
  • 测试信息
  • 测试信息
  • 测试信息