mybatis plus查询空指针
时间: 2023-11-09 17:03:32 浏览: 79
关于 Mybatis Plus 查询空指针的问题,可能是由于查询条件为空导致的。可以在查询前先判断查询条件是否为空,例如:
```java
if (ObjectUtils.isEmpty(queryWrapper)) {
queryWrapper = new QueryWrapper<>();
}
```
另外,也可以检查实体类中对应的属性是否为基本数据类型,如果是基本数据类型,需要使用对应的包装类。
相关问题
mybatis-plus报空指针异常
mybatis-plus报空指针异常可能是因为在普通类调用Mapper接口时,使用了mybatis-plus的功能,但在泛型类中找不到id属性,导致查找到的值为空。这会引发空指针异常(NullPointerException)。为了解决这个问题,可以通过深入学习MyBatis并了解其核心对象、配置文件和映射文件的使用来修复。确保在泛型类中定义了正确的id属性,并正确配置映射文件中的语句映射。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [SpringBoot:在普通类调用 Mapper 接口使用 MybatisPlus 报错:空指针异常(NullPointerException)](https://blog.csdn.net/weixin_43642521/article/details/124491271)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [MyBatis-plus使用出现空指针异常或者表不纯在](https://blog.csdn.net/gtq1061414470/article/details/121019792)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [SSM框架的学习与应用JavaEE(第二天)Mybatis的深入学习](https://download.csdn.net/download/m0_53659738/88241458)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
mybatis-plus 多字段in
Mybatis-Plus 提供了一个方便的方法 `in`,可以用于多字段的 `in` 查询。例如,假设有一个实体类 `User`,其中包含 `name` 和 `age` 两个字段,我们想要查询姓名为 "张三" 或 "李四",年龄为 18 或 20 的用户,可以使用如下代码:
```java
List<User> userList = userMapper.selectList(new QueryWrapper<User>()
.in("name", "张三", "李四")
.in("age", 18, 20)
);
```
其中,`in` 方法的第一个参数为字段名,后面跟上需要查询的多个值。如果需要查询多个字段,可以多次调用 `in` 方法即可。需要注意的是,`in` 方法中的参数值不能为 null,否则会抛出空指针异常。