问题
在 SpringBoot 项目中,使用 Mybatis 从数据库中查询数据,查询的数据获取属性时报错空指针异常:
java.lang.NullPointerException: null
解决
例如以下代码段:
@GetMapping("/t32")
public void test32(){
UserEntity userById = userMapper.getUserById(19);
System.out.println(userById);
System.out.println(userById.getUserName());
}
如果 UserEntity userById = userMapper.getUserById(19);
没有查询到 ID 为 19
的 user,那么 userById 即为 null,因此继而获取 userById.getUserName()
时即会出现 java.lang.NullPointerException
。
注:
- 在根据某一条件获取用户 List 时,如果根据该条件没有获取到任何用户,那么该 List 的长度为 0。
总结
SpringBoot 项目中,如果 Mybatis 查询单条数据时未获取到任何值,那么用于接收该值的变量为 null;如果查询 List 时未获取到任何值,那么用户接收该 List 的变量的长度为 0。