首页 新闻 会员 周边

突然发现一个Mybatis的奇怪的玩意

0
[待解决问题]
当我们在使用mybatis查询数据库内容的时候,取得的返回值一般是存储在三种类型里的,Object,list,map。
我发现,当数据库里无论没有这个查询的结果集的时候,list.size()的值是空。。。
一般来说,这个应该是int型,我甚至用了输出流往控制台里输出list.toString()和list.size(),发现》

“list.size()是不存在的,根本打印不出来”

AirTrioa的主页 AirTrioa | 菜鸟二级 | 园豆:202
提问于:2018-10-28 23:55
< >
分享
所有回答(2)
0

当在dos下使用sql语句对数据进行查询的时候,如果没有数据则会返回一个empty,所以数据库没有数据返回,这种情况下,mybatis是没法进行数据映射的,所以你调用list.size()方法会抛出空指针吧。

PottyHarry | 园豆:302 (菜鸟二级) | 2018-11-01 16:05

空值返回空指针也就算了,问题是,非空,打印出来也是不存在的。。。

支持(0) 反对(0) AirTrioa | 园豆:202 (菜鸟二级) | 2018-11-01 17:22
0

数据库执行查询一个不存在的数据,返回Empty set (0.00 sec),就算java里用list接收也没用啊,相当于根本没接收到,是不存在的,连null都不是,所以打印不出来东西很正常,这类似于js中的undefined类型,这在java里是打印不出来的

myzy | 园豆:123 (初学一级) | 2019-08-29 10:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册