public static <T> PageInfo<T> startPage(PageSortInterface pageSort, Supplier<List<T>> supplier, QueryWrapper<T> queryWrapper) 中的QueryWrapper是什么,有什么作用?
时间: 2023-12-10 19:04:52 浏览: 104
`QueryWrapper` 是 MyBatis-Plus 框架提供的一个查询条件构造器,用于方便地构造 SQL 查询条件。
在 `startPage` 方法中增加 `QueryWrapper` 参数后,可以使用它来构造查询条件,例如:
```
public static <T> PageInfo<T> startPage(PageSortInterface pageSort, Supplier<List<T>> supplier, QueryWrapper<T> queryWrapper) {
PageHelper.startPage(pageSort.getPageNum(), pageSort.getPageSize(), pageSort.getSort() + " " + pageSort.getOrder());
List<T> list = supplier.get(queryWrapper);
PageInfo<T> pageInfo = new PageInfo<>(list);
return pageInfo;
}
```
在 `supplier` 中接收 `QueryWrapper` 参数,例如:
```
public List<User> getUsersByCondition(QueryWrapper<User> queryWrapper) {
return userDao.selectList(queryWrapper);
}
```
这样就可以使用 `QueryWrapper` 构造查询条件,实现更为灵活的分页查询。
阅读全文