解析这段代码 public TableDataInfo list(CommonProvider commonProvider) { startPage(); List<CommonProvider> list = commonProviderService.selectCommonProviderList(commonProvider); return getDataTable(list); }
时间: 2023-06-05 10:08:07 浏览: 138
这是一个使用MyBatis-Plus框架中的BaseMapper类的list方法来获取通用数据对象列表的代码。具体实现中,通过调用startPage方法开启分页查询,然后调用commonProviderService的selectCommonProviderList方法获取通用数据提供者列表,最后调用getDataTable方法将通用数据对象列表封装成一个TableDataInfo对象并返回。
相关问题
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; }中的 List<T> list = supplier.get(queryWrapper);报错Expected 0 arguments but found 1
根据你提供的代码,可以看出 `supplier` 是一个 `Supplier` 接口,该接口不接受任何参数,只有一个 `get()` 方法,因此在调用 `supplier.get(queryWrapper)` 时会报错。如果你想要将 `queryWrapper` 作为参数传递给 `supplier`,可以将 `supplier` 定义为一个接受 `QueryWrapper<T>` 类型参数的函数式接口,例如 `Function<QueryWrapper<T>, List<T>>`,然后在调用时使用 `supplier.apply(queryWrapper)`。这样就可以将 `queryWrapper` 作为参数传递给 `supplier` 了。
public static <T> Page<T> startPage(PageSort pageSort, Supplier<List<T>> supplier) { PageHelper.startPage(pageSort.getPageNum(), pageSort.getPageSize(), pageSort.getSort() + " " + pageSort.getOrder()); List<T> list = supplier.get(); Page<T> page = new Page<>(); return (Page<T>) list; } 该方法需要判断pageSort.getSort(),pageSort.getOrder()有没有值的情况,并根据值的情况调用PageHelper.startPage
确保分页的排序参数正确,可以在方法中添加以下判断逻辑:
```
if (StringUtils.isNotBlank(pageSort.getSort()) && StringUtils.isNotBlank(pageSort.getOrder())) {
PageHelper.startPage(pageSort.getPageNum(), pageSort.getPageSize(), pageSort.getSort() + " " + pageSort.getOrder());
} else {
PageHelper.startPage(pageSort.getPageNum(), pageSort.getPageSize());
}
```
其中,StringUtils.isNotBlank() 方法是一个常用的字符串判断方法,可以通过 StringUtils 类的引入使用。这样,当 pageSort.getSort() 或 pageSort.getOrder() 为空时,就会使用默认的 pageNum 和 pageSize 进行分页。
阅读全文