mybatis_plus分页wrapper条件查询
时间: 2023-09-22 08:05:02 浏览: 51
mybatis_plus分页wrapper条件查询可以通过设置QueryWrapper的条件来实现。首先,创建一个QueryWrapper对象,并使用其提供的方法添加需要的条件,例如eq、like、between等。然后,将QueryWrapper对象作为参数传递给selectPage方法进行查询。以下是一个示例代码:
```java
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("status", 1)
.like("username", "admin")
.between("age", 20, 30);
IPage<User> page = new Page<>(1, 10);
userDao.selectPage(page, queryWrapper);
List<User> userList = page.getRecords();
```
在上述示例中,我们创建了一个QueryWrapper对象,并使用eq方法添加了一个等于条件,使用like方法添加了一个模糊查询条件,使用between方法添加了一个范围查询条件。然后,我们创建了一个Page对象,并将QueryWrapper对象和Page对象作为参数传递给selectPage方法进行查询。最后,我们可以通过getRecords方法获取查询结果。
相关问题
mybatis_plus分页条件查询
MyBatis-Plus提供了方便的分页查询功能。在配置文件中,你可以使用MybatisPlusInterceptor和PaginationInnerInterceptor来实现分页拦截器的配置,设置分页拦截器的参数,如请求页数大于最大页时的操作和单页的限制数量。以下是一个示例的配置类代码:
```java
@Configuration
public class MybatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
PaginationInnerInterceptor innerInterceptor = new PaginationInnerInterceptor();
innerInterceptor.setOverflow(false);
innerInterceptor.setMaxLimit(500L);
interceptor.addInnerInterceptor(innerInterceptor);
return interceptor;
}
}
```
在进行条件查询时,你可以使用MyBatis-Plus提供的条件构造器来实现,例如:
```java
@Service
public class UserServiceImpl implements UserService {
@Autowired
private UserMapper userMapper;
@Override
public List<User> findByCondition(String name, Integer age) {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("name", name).eq("age", age);
return userMapper.selectList(queryWrapper);
}
}
```
这个示例中,我们使用了QueryWrapper类来构造查询条件,eq方法表示等于,可以根据具体需求选择其他方法来构建更复杂的查询条件。
mybatis-plus分页条件查询
Mybatis-Plus是一个Mybatis的增强工具,它提供了很多实用的功能,其中包括分页条件查询。使用Mybatis-Plus进行分页条件查询,需要先创建一个Page对象,然后设置分页参数,最后调用Mapper的selectPage方法即可。
具体步骤如下:
1. 创建Page对象
Page对象是Mybatis-Plus提供的分页对象,它包含了分页参数和查询结果。创建Page对象时需要指定当前页码和每页显示的记录数。
Page<User> page = new Page<>(1, 10);
2. 设置查询条件
使用Mybatis-Plus进行条件查询,需要使用Wrapper对象来设置查询条件。Wrapper是一个抽象类,它提供了很多方法来设置查询条件,比如eq、like、in等。
Wrapper<User> wrapper = new QueryWrapper<>();
wrapper.eq("age", 18);
3. 调用Mapper的selectPage方法
最后,调用Mapper的selectPage方法进行分页查询。selectPage方法需要传入Page对象和Wrapper对象。
IPage<User> userPage = userMapper.selectPage(page, wrapper);
其中,IPage是Mybatis-Plus提供的分页结果对象,它包含了查询结果和分页信息。在查询结果中,可以通过userPage.getRecords()方法获取当前页的记录列表;在分页信息中,可以通过userPage.getCurrent()方法获取当前页码,通过userPage.getSize()方法获取每页显示的记录数,通过userPage.getTotal()方法获取总记录数。
以上就是使用Mybatis-Plus进行分页条件查询的步骤。