mybatis-plus分页查询排序,先按type字段排序,type字段相同,再按sort字段排序
时间: 2024-05-15 11:12:51 浏览: 96
MyBatis-Plus 分页查询以及自定义sql分页的实现
4星 · 用户满意度95%
在 MyBatis-Plus 中,可以使用 `Page` 对象进行分页查询,同时可以通过 `Wrapper` 对象进行排序。你可以按照以下步骤进行操作:
1. 创建一个 `Page` 对象,并设置分页相关参数,例如当前页码、每页记录数等。
2. 创建一个 `Wrapper` 对象,并使用 `orderBy` 方法设置排序条件。在排序条件中,可以使用 `orderByAsc` 和 `orderByDesc` 方法进行升序和降序排序。例如:
```java
QueryWrapper<YourEntity> wrapper = new QueryWrapper<>();
wrapper.orderBy(true, true, "type", "sort");
```
在 `orderBy` 方法中,第一个参数表示是否开启排序,第二个参数表示是否为升序排序,后面的参数是要排序的字段名,支持多个字段。
3. 调用 `Mapper` 接口中的分页查询方法,并传入 `Page` 对象和 `Wrapper` 对象。例如:
```java
IPage<YourEntity> result = yourMapper.selectPage(page, wrapper);
```
在返回结果中,可以通过 `getRecords` 方法获取当前页的记录列表,通过 `getTotal` 方法获取总记录数等信息。
完整示例代码如下:
```java
Page<YourEntity> page = new Page<>(1, 10);
QueryWrapper<YourEntity> wrapper = new QueryWrapper<>();
wrapper.orderBy(true, true, "type", "sort");
IPage<YourEntity> result = yourMapper.selectPage(page, wrapper);
List<YourEntity> records = result.getRecords();
long total = result.getTotal();
```
阅读全文