QueryWrapper不能重复使用吗
时间: 2023-10-19 07:34:14 浏览: 216
mybatis plus条件构造器queryWrapper、updateWrapper
QueryWrapper可以重复使用,它是MyBatis-Plus提供的一个便捷的查询条件构造器。你可以通过多次调用QueryWrapper对象的方法,连续地添加查询条件。每次添加条件后,QueryWrapper对象会将该条件存储起来,以便后续的查询操作使用。所以,你可以在不同的查询操作中复用同一个QueryWrapper对象。例如:
```java
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("age", 20).like("name", "张");
List<User> userList = userMapper.selectList(wrapper);
// 清空之前的查询条件
wrapper.clear();
wrapper.eq("sex", "女").orderByDesc("id");
List<User> femaleUserList = userMapper.selectList(wrapper);
```
在上面的代码中,我们先使用QueryWrapper对象`wrapper`添加了查询条件`age=20`和`name like '张'`,然后执行了查询操作。接着,我们清空了之前的查询条件,并添加了新的查询条件`sex='女'`和排序规则`按id降序`,再次执行了查询操作。
注意,如果你要在多个线程中并发地使用QueryWrapper对象进行查询操作,应当使用线程安全的方式创建QueryWrapper对象,例如每个线程都创建一个新的QueryWrapper对象。
阅读全文