mybatis 多对多以及其他使用使用

本文分享了在Mybatis中处理多对多关系的分页查询策略,包括使用不当的解决方案及优化建议。还介绍了如何避免修改映射表时的复杂操作,通过判断增删操作简化数据同步。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近经常使用mybatis,对一些不是常用但有用的方式记录下

多对1或多对多分页查询

我的学生会在多个专业下的班级下,所以是多对多关系,如果出现分页查询,解决办法也很多!!!如果没有分页查询,就莫得这个问题
我所列出的这种性能不是很好,相当于先查出学生再根据学生去查对应的专业,可以使用mybatis-log插件看到。也有其他解决方案,但是我嫌弃不好看麻烦,所以就直接这样

一、主方法:

在这里插入图片描述

二、返回方法:

这里注意collection是用ofType
在这里插入图片描述

三、查询方法:

在这里插入图片描述

mybatis双重批量新增

参数只有一个,但是参数里面有个属性也是List
在这里插入图片描述

返回对象中有List<String.>

对象中:

在这里插入图片描述

xml中:

这样就可以和对象里返回的对应起来
在这里插入图片描述

修改多对多映射关系表

如果你的映射表还有其他字段,记录他们关系的一些重要东西,那么你修改的时候就不能先删除再添加了。
比如,学生和专业课程映射表中有个学习百分比的字段,那么我们修改的学生的时候肯定会修改映射关系,那么就不能先删再添。
在这里插入图片描述

解决办法

解决思路大概是:判断前端传过来的映射跟表里关系对比,如果有增加就增加映射,如果减少就删除
看不懂的话可以评论
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值