轻松搞定项目中的空指针异常Caused by: java.lang.NullPointerException: null
大家在项目测试过程中,是不是经常会碰到这个空指针异常呢Caused by: java.lang.NullPointerException: null
当大家遇到这个问题,大家是怎么处理?自己解决还是让开发来解决
以下是小编自己遇到的实际案例:
查询组织详情的时候,出现系统异常
既然出现了问题,那么就查看日志呗(学会查看日志,是定位问题的最基本的能力)
查看代码的247行,是操作啥:
第247行的代码是查询orgAuth.getUserMaxLimit()方法获取getUserMaxLimit
获取接口的sql,查看哪个sql是在查询getUserMaxLimit
通过对比发现:
数据库中确实查询到的UserMaxLimit字段的NULL,所以后端抛出了空指针异常
那么看一下正常的不报错的查询的结果数据:
至此,问题已经找到了
那么怎么解决这个问题就简单了,直接复制这个字段到存在问题的数据记录中
INSERT INTO `debtoauth2`.`t_organization_auth` (`id`, `orgId`, `smsSwitch`, `smsMaxLimit`, `userMaxLimit`, `debtMaxLimit`, `createTime`, `updateTime`, `isOutCall`) VALUES ('1671037', '3', '0', '-1', '5', '50', '2019-09-25 17:25:57', '2019-09-25 17:25:57', '0');
再次查看业务接口:
问题已经解决
其实项目环境出现报错不可怕,关键是要有自己的定位意识,环境问题,数据问题,配置问题都可能阻塞测试过程,只有掌握了问题的解决方法,以不变应万变
其实针对这类空指针的异常定位,比较简单,如果永远不去自己排除问题,永远没有进步,依赖开发
实际上出现空指针的时候,有可能是并发的时候出现接口查询超时,导致下面的接口参数为空,或者数据库中不存在这个字段,或者缓存没有这条记录导致的
轻松搞定项目中的空指针异常Caused by: java.lang.NullPointerException: null的更多相关文章
- 项目报错:Caused by: java.lang.ClassNotFoundException: Didn't find class "..."on path: DexPathList
项目报错: Caused by: java.lang.ClassNotFoundException: Didn't find class "com.eshore.njb.MyApplicat ...
- JavaFx出现错误Caused by: java.lang.NullPointerException: Location is required的解决方法
问题截图: "C:\Program Files\Java\jdk1.8.0_131\bin\java.exe" "-javaagent:I:\IntelliJ IDEA ...
- springboot下jar包方式运行Caused by: java.lang.ExceptionInInitializerError: null
idea调试过程中不会出现此问题,异常如下 org.springframework.beans.factory.BeanCreationException: Error creating bean w ...
- Caused by: java.lang.NullPointerException, java.lang.reflect.InvocationTargetExc
java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native M ...
- Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setDisplayShowHomeEnabled(boolean)' on a null object reference
/********************************************************************************* * Caused by: java ...
- [hadoop] map函数中使用FileSystem对象出现java.lang.NullPointerException的原因及解决办法
问题描述: 在hadoop中处理多个文件,其中每个文件一个map. 我使用的方法为生成一个文件,文件中包含所有要压缩的文件在HDFS上的完整路径.每个map 任务获得一个路径名作为输入. 在eclip ...
- 三步轻松搞定delphi中CXGRID手动添加复表头(多行表头,报表头)
网上有代码动态生成cxgrid多行表头的源码,地址为:http://mycreature.blog.163.com/blog/static/556317200772524226400/ 如果要手动设计 ...
- 轻松搞定面试中的二叉树题目(java&python)
树是一种比较重要的数据结构,尤其是二叉树.二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒.二叉 ...
- 轻松搞定面试中的“虚"
提要 今天要整理的知识点是C++中有关虚的一切. 包括:虚函数,纯虚函数,虚基类,虚继承... 1.什么是虚函数,有什么作用? 在基类用virtual声明成员函数为虚函数.这样就可以在派生类中重新定义 ...
随机推荐
- [译]C# 7系列,Part 6: Read-only structs 只读结构
原文:https://blogs.msdn.microsoft.com/mazhou/2017/11/21/c-7-series-part-6-read-only-structs/ 背景 在.NET世 ...
- 关于选用ccflow你所担心的问题都在这里为您解答
致ccflow客户 感谢大家ccbpm的认可,我们会一如既往的以踏实的技术来回应大家的支持. 针对大家疑问最多的几个问题,在这里我我为大家一一解答. 代码一直在更新,不稳定问题 版本控制我们做的差,是 ...
- 关于使用DB2数据库的项目后台报-420错误码的问题
### Error querying database. Cause: com.ibm.db2.jcc.am.SqlDataException: DB2 SQL Error: SQLCODE=-4 ...
- java之不同数据流应用举例
按操作单位的不同分为:字节流(8bit)(InputStream.OuputStream).字符流(16bit)(Reader.Writer) 按数据流的流向不同分为:输入流.输出流 按角色的不同分为 ...
- 牛客集训 湖南省赛E题 Grid 动态开点线段树
国庆牛客集训的题,正好准备好好训练线段树,想起来就补一下. 题意很简单,两种操作行合并或者列合并,每个操作后计算有多少个子块. 这题应该先推导公式,行操作或者列操作只有一种的时候,很简单,总数就是n* ...
- 【数据库】SQLite3常用函数
版权声明:本文为博主原创文章,转载请注明出处. https://www.cnblogs.com/YaoYing/ SQLite3常用函数 打开数据库 函数原型: int sqlite3_open(co ...
- 本地的个人web网站上线的全过程,供大家参考(PHP,简易的LAMP环境搭建)
一 : 你需要准备的东西 1.本地能访问的网站,最好是改过host文件和apache的httpd-vhosts.conf,配置过本地域名的那种(减少传到线上出现的问题,文件路径不对呀啥的) 2.一个云 ...
- Java DAO 模式
转载自https://www.runoob.com/note/27029 DAO 模式 DAO (DataAccessobjects 数据存取对象)是指位于业务逻辑和持久化数据之间实现对持久化数据的访 ...
- ubutu tornado python3.7.5 nginx supervisor 部署web api
环境: 1.Ubuntu 服务器 2.python3.7.5 安装 1.python3.7.5 安装的话还是比较简单,流程大致是./configure ->make && mak ...
- springboot传值踩坑
由于我现在写的项目都是前后端分离的,前端用的是vue,后端springboot,于是前后端传值的问题就是一个比较重要的问题,为此我还特意去学了一下vue的传值,其实就是用一个axios组件,其实就是基 ...