这个坑还是有点烦人的,有时候一不注意就踩到了。

一、问题场景

用mybatis做查询的时候,遇到了这样一个空指针异常。

二、问题原因

使用mybatis查询的时候,如果在数据库中找不到相关的值,此时select方法的返回值会是一个null,java的自动拆箱机制的时候会报出一个空指针异常。

其实原因还是很简单的,那即是mybatis在数据库中找不到数据,就返回一个null。如果直接对这个返回值使用tostring()方法,就等于是对null使用tostring()方法,那当然会抛出空指针异常了、

三、如何解决?

首先,判断返回的值是否为null,再去进行下一步操作。

这样就避免了空指针异常了。

四、总结

java有些不同于go,我感觉我是go用多了才会犯这个错…以后一定要更小心。

1 对 “异常 mybatis 空指针NullPointerException”的想法;

发表评论

电子邮件地址不会被公开。 必填项已用*标注