java字段映射替换框架一对多,框架学习系列 mybatis 第十九篇 一对多映射

1:一对多映射

2:总结&下节预告

3:凯哥说一说

本文是《凯哥陪你学系列-框架学习之mybatis框架学习》中第十九篇 一对多映射

声明:本文系凯哥Java(www.kaigejava.com)原创,未经允许,禁止转载!

回顾:

通过前两篇的学习,我们知道了一对一的映射。可以返回resultType和resulMap。

在使用resultMap的时候,需要先声明在使用。

在主表对象一端使用association标签表明是一对一映射关系的。

一:一对多映射

1.1:需求

查询订单信息,关联查询订单明细及用户信息

1.2:sql语句分析

主表:orders(订单表)

从表:orderdetail(订单明细表)、user(用户表)

表之间关系:

订单表与订单明细表之间是一对多的关系。

具体sql语句如下:

504ef7001de8cba12fd20a87154a0eca.png

dd405f0e32de17191cc819a70ed7dc5f.png

1.3:修改扩展类,添加订单明细信息字段

504ef7001de8cba12fd20a87154a0eca.png

f18bd60e73eff7de1c9455cdb718e047.png

1.4: 对应的mapper映射文件

504ef7001de8cba12fd20a87154a0eca.png

e15deae07415609b45634b06b80d9262.png

对应class:

504ef7001de8cba12fd20a87154a0eca.png

e1ca633830a0bfab73994dff76fadc15.png

说明:

一对多关系:

在一的(主表)实体对象中声明多的(从表)pojo 集合属性

在对应的主表mapper配置文件中,使用collection标签表明开始一对多关系映射

collection标签属性说明:

collection中property:同样对应的是多方在一方对应的属性名

完整的mapper:

504ef7001de8cba12fd20a87154a0eca.png

96b5261ec824e6d17762bda6a8389dff.png

1.4:mapper接口类:

504ef7001de8cba12fd20a87154a0eca.png

8f5e518fe2eab315111834a59f4d64ca.png

1.5:测试类:

504ef7001de8cba12fd20a87154a0eca.png

252dbf6a26bc415189043c9d30d81384.png

1.6:运行结果:

504ef7001de8cba12fd20a87154a0eca.png

012b9ad10225bf8ada6a9b94c4890f50.png

二:总结&下节预告

总结:

通过本文学习,我们需要掌握的

1:数据模型分析。需求出来后,根据需求分析出对应的表、实体以及表之间的关系

2:根据需求,需要知道,谁知多的一方,谁是一的一方。

3:在一的一方的声明多的一方

3.1:一的一方的pojo对象中需要声明集合类型的多的一方pojo作为属性

3.2:在一的一方的mapper.xml文件中使用collection 标签声明一对多的关系

下节预告:

在现实生活中,我们有一对一,一对多,还有多对多的对应关系。所以,接下来一篇中,我们将要学习多对多的对应关系。

凯哥说一说:

凯哥希望各位看官老爷们,多提提意见。有时候,或许您们看不到我的回复,但是我会认真看每个人的意见的。会在相应文章中给出解答的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值