记录-Mybatis在执行sql的时候抛出空指针异常的特殊场景
在使用mybatis去执行insert语句的时候,抛出异常信息如下:

日志里抛出的空指针异常,是个太普通的异常了!百度了很久没有都解决我的问题,无能狂怒后后冷静下来整理问题排查思路:

1、首先检查mapper是否注入,是否未加 @Autowired 注解 ,这也大部分空指针异常时需要排查的地方;
2、检查insert入参的po中的字段是否为空,所以打印出po类检查(我代码中的po类是一个继承类,还需要打印下父类的属性,参考博客:https://www.cnblogs.com/WJ-9452/p/15597793.html)
3、检查insert语句,需要打印出sql语句,我这里是配置application.yml,level下面填写的是mapper的路径

可以参考博客:https://blog.csdn.net/c2311156c/article/details/82862616?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-82862616-blog-78926219.pc_relevant_antiscanv2&spm=1001.2101.3001.4242.2&utm_relevant_index=4
本地起了下服务,调用有问题的那行代码,可以看到报错信息更加明确了,(page)字段有问题,

通过这个报错信息,我再去搜索此类bug,才发现由于page字段是数据库中的保留字段,需要加``单引号来让mybatis识别出来,如下图:

参考博客:https://blog.csdn.net/u012452555/article/details/111932827
这个问题困扰了我不少时间,特此记录下,让别的同学少走弯路!!!
浙公网安备 33010602011771号