Mybatis一对一,一对多

一对一

假如有student表(学生表)和student_card表(学生证表)。

student表中有一个字段self_card用来查student_card,student_card表中有一个student_id用来查student。

在Student的pojo类中,成员self_card被替换成StudentCard的pojo类,通过查询student_id将Student中的StudentCard补全。

student表如果没有self_card这个字段对于pojo类来说是无关紧要的,因为pojo类可以重新增加其对应的成员再对其赋值。

这种情况在Mybatis中可以在StudentMapper的<resultMap>中添加

<association property="self_card" column="id" 
        select="mytatis.mapper.StudentSelfcardMapper.findStudentSelfcardByStudentId" />

就可以获取Student的所有信息。

一对多

如果一个学生对应多门课程,这时候称为一对多,而每门课程对其具体的课程信息就是一对一。
一对多的级联就需要用<collection>

<collection property="studentLecturesList" column="id" 
        select="mytatis.mapper.StudentLectureMapper.findStudentLectureByStuId" />

一对一还是用上面的<association>
具体代码请点击源码

转载于:https://www.cnblogs.com/bihanghang/p/9989036.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值