博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis0205 一对多查询 复杂
阅读量:5280 次
发布时间:2019-06-14

本文共 2087 字,大约阅读时间需要 6 分钟。

查询所有用户信息,关联查询订单及订单明细信息及商品信息,订单明细信息中关联查询商品信息

1.1sql主查询表:用户信息关联查询:订单、订单明细,商品信息SELECT   orders.*,  user.username,  user.sex ,  orderdetail.id orderdetail_id,  orderdetail.items_num,  orderdetail.items_id,  items.name items_name,  items.detail items_detailFROM  orders,  USER,  orderdetail,  itemsWHERE orders.user_id = user.id  AND orders.id = orderdetail.orders_id AND items.id = orderdetail.items_id

 

 

 

pojo定义在user.java(主表)中创建映射的属性:集合 List
orderlist在Orders中创建映射的属性:集合List
orderdetails 在Orderdetail中创建商品属性:pojo Items items

 

mapper.xml

将查询的数据库结果和User接收对象进行映射 
id是User的属性,user_id是查询的数据库表的列名
id是Orders的属性,id是查询的数据库表的列名

1.1 mapper.java

测试:

// 一对多查询使用resultMap    @Test    public void testFindUserOrderDetail() throws Exception {        SqlSession sqlSession = sqlSessionFactory.openSession();        // 创建mapper代理对象        OrdersMapperCustom ordersMapperCustom = sqlSession                .getMapper(OrdersMapperCustom.class);        // 调用方法        List
list = ordersMapperCustom.findUserOrderDetail(); System.out.println(list); }

 

转载于:https://www.cnblogs.com/yaowen/p/4872816.html

你可能感兴趣的文章
How to check Logstash's pulse
查看>>
python闭包
查看>>
Leetcode-Letter Combinations of a Phone Number
查看>>
IntelliJ Idea 2017 免费激活方法
查看>>
IOS8 App开发快速入门视频教程与案例分享 20课 附讲义
查看>>
40、mysql的历史简介
查看>>
【java】为什么阿里巴巴禁止在 foreach 循环里进行元素的 remove/add 操作
查看>>
boost相关函数
查看>>
iOS 设置导航栏之二(设置导航栏的颜色、文字的颜色、左边按钮的文字及颜色)...
查看>>
Java Bean 使用包装类型 还是基本类型
查看>>
常见同花顺面试题实例总结
查看>>
JQuery Offset实验与应用(转载)
查看>>
C# 移动开发 MasterDetailPage 侧滑
查看>>
理解RESTful架构[转]
查看>>
递归:斐波那契数列与汉诺塔
查看>>
前端-细节处理笔记
查看>>
第十六章 多态性(一)
查看>>
INSERT IGNORE INTO / REPLACE INTO
查看>>
Python数据类型-布尔/数字/字符串/列表/元组/字典/集合
查看>>
MFC中theApp
查看>>