心血来潮,把一个大文本txt文件切割成小文件,然后依次把文件写入数据库,但是在插入数据的时候出现空指针异常NullPointerException 。检查参数传递是否为空,或者为null,但是打印出的参数是不为null的。我先卖个关子,先说下事件发生的起因。

在text的目录创建一个新文件,其他配置都配置好了,唯独少了一个@SpringBootTest

注解(没错,空指针原因就是这个),进行运行代码,在访问数据访问层也就是dao层的插入方法的,出现空指针异常,没错,第一次看到空指针异常,就怀疑传的参数为null或者是""。加上打印语句,发现取到的参数不为空,不信邪的又运行一次,还是不为空。

第二次猜想,是不是插入方法有问题,用写死的数据去调试插入方法(非同一个文件,这个类是生成springboot项目自带的test),发现可以插入。

第三次猜想,会不会是自带的插入方法在大量数据的时候,会出现这个问题,于是手撸了一个插入方法,并且在springboot生成的test来测试,可以插入,但是用在我出现空指针那个junit类,发现还是空指针。

第四次debug,对比插入方法的参数有什么不一致,果然,我发现调用数据访问层的构造方法为null,发现少了@SpringBootTest,少了这个注解,配置没有注入进来,空指针异常指的是配置的参数为null,而不是传递过来的参数为null导致的空指针异常。

总结,咬牙切齿,失败是成功之母,特此记录,提醒自己。

一个关于springboot的junit使用错误,空指针异常相关推荐

  1. SpringBoot整合junit测试案例

    1.之前开发项目是不要求写单测的,最近公司管理严格需要对开发的功能编写单测,所以在此记录下springboot对junit的整合以及使用的方式 2.引入需要用到的依赖jar包,一般创建好springb ...

  2. SpringBoot整合Junit测试

    文章目录 SpringBoot整合Junit测试 1.SpringBoot引入springboot的测试依赖 2.生成测试方法 3.测试结果 SpringBoot整合Junit测试 假设已对mybat ...

  3. SpringBoot 使用junit 进行测试类的编写

    SpringBoot 是最近比较火的一个框架,他几乎把Spring 对框架的整合简化的只需要动动手指就可以实现,spring Boot 把配置的Xml 去掉啦,只是用啦一个 application.p ...

  4. 一个基于 SpringBoot 开源的小说和漫画在线阅读网站,简洁大方 !强烈推荐 !

    来源:GitHub精选 今天给大家推荐的这个开源项目是一个基于 SpringBoot 实现的小说和漫画在线阅读网站. 这个开源项目叫:fiction_house. 这个开源项目是一个多平台(web.安 ...

  5. 一个基于 SpringBoot 开源的小说和漫画在线阅读网站,简洁大方、强烈推荐

    来源:GitHub精选 今天给大家推荐的这个开源项目是一个基于 SpringBoot 实现的小说和漫画在线阅读网站. 这个开源项目叫:fiction_house. 这个开源项目是一个多平台(web.安 ...

  6. 一个由于springboot自动配置所产生的问题的解决

    一个由于springboot自动配置所产生的问题的解决 参考文章: (1)一个由于springboot自动配置所产生的问题的解决 (2)https://www.cnblogs.com/hlhdidi/ ...

  7. yue-library是一个基于SpringBoot封装的基础库

    yue-library是一个基于SpringBoot封装的基础库

  8. springboot集成Junit在执行测试类的时候提示Failed to resolve异常

    项目场景:springboot集成Junit在执行测试类的时候提示Failed to resolve异常 项目场景:springboot版本2.5.7,Junit版本:4.13.2,在执行测试类的时候 ...

  9. 推荐一个基于 SpringBoot 开源的小说和漫画在线阅读网站

    今天给大家推荐的这个开源项目是一个基于 SpringBoot 实现的小说和漫画在线阅读网站. 这个开源项目叫:fiction_house. 这个开源项目是一个多平台(web.安卓 app.微信小程序) ...

最新文章

  1. java中bjt和utc转化_如何在Java中转换UTC和本地时区
  2. 疫情凶险,开学延期:在家中陪孩子,需要注意这3点
  3. rcmd: socket: Permission denied
  4. thinkphp scws mysql_thinkphp buildHtml 函数实现网站静态化
  5. QTP中对用户自定义环境变量的XML操作的几个函数
  6. 钟国晨160809323 (作业9)
  7. 玩转oracle 11g(13):命令学习1
  8. javaweb简要介绍,虚拟路径,虚拟主机
  9. 使用paintEvent()对窗口进行OpenGL2D绘图
  10. JMETER分布式原理
  11. 定义空列表元素类型_python数据类型是什么
  12. 面向对象编程(一):类对象
  13. ajax(form)图片上传(spring)
  14. springboot 初始化一个常量map_C++ 惯用法: const 常量和字面量
  15. Dell R410 BIOS 升级方法
  16. AutoCad多层嵌套图块的颜色显示规则
  17. 从石器时代到硅器时代
  18. java图片去掉水印
  19. 利用Office,将多个doc文档合并为一个文件,文档合并
  20. Tomcat 解决“At least one JAR was scanned for TLDs yet contained no TLDs”问题

热门文章

  1. web字体文件过大优化方案
  2. 渗透沉思录 - 转自亮神
  3. LAMP源码环境搭建
  4. 内网穿透配置(FRP)
  5. 写给30岁的自己,以及所有即将、正在、已经奔三的朋友们
  6. 2.5 zio入门——ZIO类型别名
  7. win10 linux安卓模拟器,WIN10电脑安卓模拟器逍遥安卓唯一真正支持
  8. 写一篇关于堆焊耐磨管道(济南韶欣生产的一种堆焊复合耐磨钢管,用于输送渣料承受高磨损和冲击的耐磨管道,还有耐磨弯头和三通等产品),不要用广告违禁词和极限词,不少于500字,并写出标题...
  9. 深大uooc学术道德与学术规范教育第十二章
  10. 常见品牌的手机型号所代表的含义