记录-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

这个问题困扰了我不少时间,特此记录下,让别的同学少走弯路!!!

posted @   TimeFramesw  阅读(1759)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· 因为Apifox不支持离线,我果断选择了Apipost!
点击右上角即可分享
微信分享提示