查询数据库数据却多了几条为null的数据(无关框架)提示抛出NullPointerException

在尝试使用Mybatis+Spring进行数据库操作时,作者遇到了空异常问题,源于多表联查。通过排查,发现是左连接和右连接导致的数据不一致,空值处理不当。博客详细解释了不同连接类型的null处理方式,并分享了解决问题的过程。
摘要由CSDN通过智能技术生成

又是愉快的踩坑一天不过坑是昨天埋的今天踩得
事情的发生是这样的:昨天开心的尝试mybatis+spring
已经把增删改查用的方法接口什么都改好了意外出现了
在这里插入图片描述
解题关键
在这里插入图片描述
数据库的数据
这是
这是我刚开始写的用来判断stuid是否冲突
在这里插入图片描述
突然空异常就抛出来了想了好多次我便更换了
Iterator strs = infoList.iterator();
迭代还是一样
然后我就去询问朋友获得长度.size()为5????
然后我就
在这里插入图片描述
没错我清除null,没有从根源上解决问题
可能是被info.getStuid()给影响了没有打印过对象
在这里插入图片描述
然后我开始寻找源头了,没错数据库
在这里插入图片描述
很好大神可能已经看出来了

多表联查出现了问题
在这里插入图片描述
没问题
在这里插入图片描述

也没问题

在这里插入图片描述

都没问题

但我的一个都不是
在这里插入图片描述

问题出现,啊啊啊啊

左连接以左表为主(被引用的话)两表一样的出现不一样的填null

右连接刚好相反以右表为主(未出现的填充null)

内连接相同的数据

算了,不说了我自己都跌了,不谈了,心酸

这个人写的通详细的:可以阅读一下
链接: [link]https://blog.csdn.net/weixin_39220472/article/details/81193617(https://blog.csdn.net/weixin_39220472/article/details/81193617).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值