mybatis 空指针异常NullPointerException

mybatis 空指针异常NullPointerException

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

 

1.遇到问题的情景

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

 

2.为什么会这样?

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

原因:java在自动拆箱的时候会调用string类中的方法,如果当前对象为null,则抛出空指针异常。

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

 

3.如何解决?

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

正确示范:

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

 

4.总结

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

发布者

xie4ever

《mybatis 空指针异常NullPointerException》上有1条评论

发表评论

电子邮件地址不会被公开。