/* * Copyright 2019-2020 Zheng Jie * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package me.zhengjie.utils; import org.springframework.data.domain.Page; import java.util.*; /** * 分页工具 * @author Zheng Jie * @date 2018-12-10 */ public class PageUtil extends cn.hutool.core.util.PageUtil { /** * List 分页 */ public static List paging(int page, int size , List list) { int fromIndex = page * size; int toIndex = page * size + size; if(fromIndex > list.size()){ return Collections.emptyList(); } else if(toIndex >= list.size()) { return list.subList(fromIndex,list.size()); } else { return list.subList(fromIndex,toIndex); } } /** * Page 数据处理,预防redis反序列化报错 */ public static PageResult toPage(Page page) { return new PageResult<>(page.getContent(), page.getTotalElements()); } /** * 自定义分页 */ public static PageResult toPage(List list, long totalElements) { return new PageResult<>(list, totalElements); } /** * 返回空数据 */ public static PageResult noData () { return new PageResult<>(null, 0); } }