空指针异常NullPointerException

直接从Map里拿字段信息

用Mybatis从数据库中查询到Map<String,Object>结果集后,直接调用get方法。

栗子:

Map<String,Object> entityMap = xxxMapper.get(id);

String name = entityMap.get("name").toString();

或

String name = (String)(entityMap.get("name"));

容易犯错的问题:如果entityMap中key为name的value为null。则该语句会爆空指针异常。

正确例子:

String name = entityMap.get("name")==null ? null : entityMap.get("name").toString();

总结

所有从Map中获取的对象都必须进行空值判断,否则会出现在特定的数据下,突然时不时的给你爆个空指针异常。


   转载规则


《空指针异常NullPointerException》 锦泉 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
消毒供应室项目业务流程图 消毒供应室项目业务流程图
用的是ProcessOn画的业务流程图,项目是消毒供应室(sterilization_supplement_department)。
2021-01-05
下一篇 
Spring事务的配置、参数详情及其原理介绍 (Transactional) Spring事务的配置、参数详情及其原理介绍 (Transactional)
消毒供应室系统使用的是SpringBoot+Mybatis+Mysql搭建的框架,因为出bug了,涉及Spring事务管理机制的学习,通过观察服务器日志和整理网上的资料,记录整理一下事务学习的心得。
2020-12-31
  目录