1 一对多查询
1.1 需求
查询所有订单信息及订单下的订单明细信息。
1.2 sql语句
主查询表:订单表
关联查询表:订单明细
SELECT
orders.*,
user.username,
user.sex ,
orderdetail.id orderdetail_id,
orderdetail.items_num,
orderdetail.items_id
FROM
orders,
USER,
orderdetail
WHERE orders.user_id = user.id AND orders.id = orderdetail.orders_id
1.3 resultMap进行一对多映射思路
resultMap
提供collection完成关联信息映射到集合对象中。
在orders类中创建集合属性:
1.4 mapper.xml
1.5 resultMap定义
因为上面sql也查询了用户信息,所以为了resultMap配置得简单点,可以继承上面一对一查询案例的resultMap,这样子就只配置关联的订单明细就行了。
ofType:可以别名,也可以是全限定名,以后统一用全限定名,比较好
1.6 mapper.java
本文介绍了一对多查询的需求背景及其SQL实现方式,并详细解析了如何使用MyBatis的resultMap来处理一对多关系的数据映射。通过具体的mapper.xml配置示例,展示了如何将查询结果映射到Java对象。
740

被折叠的 条评论
为什么被折叠?



