在生产中查询出的List集合数据需要分页传到前端。
一、分页工具类
/**
* 分页工具类
*/
public class PayUtil {
/**
* 转换WrapperResponse<PageResult>里面的dto
*
* @param res 需要装换的WrapperResponse<PageResult<K>>
* @param clazz 装换目标dto对象
* @return WrapperResponse<PageResult < T>
*/
public static <K, T> WrapperResponse<PageResult<T>> convertWrapperPageResultData(WrapperResponse<PageResult<K>> res, Class<T> clazz) {
//新建WrapperResponse对象
WrapperResponse<PageResult<T>> response = new WrapperResponse<>();
//设置WrapperResponse对象的属性值
response.setCode(res.getCode());
response.setType(res.getType());
response.setMessage(res.getMessage());
//入参PageResult对象
PageResult<K> pageParam = res.getData();
//新建PageResult对象
PageResult<T> page = new PageResult<>();
//设置PageResult对象的属性值
page.setPageNum(pageParam.getPageNum());
page.setPageSize(pageParam.getPageSize());
page.setSize(pageParam.getSize());
page.setStartRow(pageParam.getStartRow());
page.setEndRow(pageParam.getEndRow());
page.setPages(pageParam.getPages());
page.setRecordCounts(pageParam.getRecordCounts());
page.setFirstPage(pageParam.isFirstPage());
page.setLastPage(pageParam.isLastPage());
//设置WrapperResponse对象的data值
response.setData(page);
//流处理dto装换
List<T> castList = res.getData().getData().stream().map(
dto -> (T) PowerBeanHelper.convertToBean(dto, clazz)
).collect(Collectors.toList());
//设置PageResult对象的data值
page.setData(castList);
//返回结果
return response;
}
/**
* WrapperResponse<List>转换为分页对象WrapperResponse<PageResult>
*
* @param res 要装换的WrapperResponse<List<T>>
* @param pageNum 分页数
* @param pageSize 分页大小
* @return WrapperResponse<PageResult < T>>
*/

本文介绍了一个Java分页工具类的实现,包括从WrapperResponse转换为PageResult对象的方法,以及从List转换为分页对象的逻辑。此外,还展示了如何在实际查询操作中使用这些工具方法进行分页查询,如在queryRewardsInfo方法中的应用。该工具类简化了前后端分页数据交互的过程。
6847

被折叠的 条评论
为什么被折叠?



