由json引起的空指针异常


由于json是根据pojo类的get方法获取属性的,所以有时候会对一些状态码进行转换,比如说status=0/1,应该给用户展示为status=禁用/启用,但数据库里不需要这个字符串,因此使用了下面这个方法去转换:

public String getStatusStr() {

    if(this.status == 1){
        return "启用";
    }

    return "禁用";
}

然后在前端页面调用这个statusStr属性,结果报了空指针异常。

严重: Servlet.service() for servlet [com.itheima.web.selectAllServlet] in context with path [/brand-demo] threw exception
java.lang.NullPointerException
    at com.itheima.pojo.Brand.getStatusStr(Brand.java:24)

最后的解决办法:

空指针解决思路就是缺啥找啥,查看了一下status,发现之前测试的时候填入了一个没写status的数据,应该就是这个数据导致的空指针

 

删除后,果然恢复正常。

 

 总结:平时写代码的时候应该养成良好的习惯,考虑全面各种可能空指针的情况,比如说用户输入的内容input_value和password比较,应该是password.equal(input_value)而不是input_value.equal(password)。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM