lambdaquerywrapper分页查询代码
时间: 2023-09-24 11:06:18 浏览: 102
分页查询代码
LambdaQueryWrapper 是 MyBatis-Plus 提供的一种方便的查询条件封装工具,可以使用它来构建复杂的 SQL 查询语句。下面是使用 LambdaQueryWrapper 进行分页查询的示例代码:
```java
// 创建 LambdaQueryWrapper 对象
LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<User>();
// 设置查询条件
wrapper.eq(User::getGender, "male")
.between(User::getAge, 18, 30);
// 创建分页对象
Page<User> page = new Page<>(1, 10);
// 执行分页查询
IPage<User> userPage = userMapper.selectPage(page, wrapper);
// 获取查询结果
List<User> userList = userPage.getRecords();
```
其中,`User` 是实体类,`userMapper` 是 MyBatis 的 Mapper 接口。上述代码中,首先创建了一个 LambdaQueryWrapper 对象,并设置了查询条件(查询性别为男性,年龄在 18 到 30 岁之间的用户)。然后创建了一个分页对象,指定了要查询的页码和每页记录数。最后调用 `selectPage` 方法执行分页查询,并通过 `getRecords` 方法获取查询结果。
需要注意的是,使用 LambdaQueryWrapper 进行分页查询时,需要在 Mapper 接口中增加一个对应的方法,例如:
```java
List<User> selectUserPage(Page<User> page, @Param(Constants.WRAPPER) QueryWrapper<User> wrapper);
```
其中,`@Param(Constants.WRAPPER)` 注解用于告诉 MyBatis-Plus 框架将 LambdaQueryWrapper 对象作为查询条件传入该方法。在实际查询时,可以直接调用该方法进行分页查询。
阅读全文