当前位置: 首页 > news >正文

springboot pagehelper分页插件封装

封装插件:

可自定义返回的Pages实体类参数

package com.wm.common;

import com.github.pagehelper.ISelect;
import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import lombok.Data;
import java.util.List;

/**
 * 分页封装
 * @param <T>
 */
@Data
public class Pages<T> {

    private int pages;

    private long total;

    private int size;

    private List<T> pageList;

    /**
     * 分页执行器
     * @param select dao层对象
     * @param pageNum 页码
     * @param pageSize 每页数
     * @return Page
     * @param <T> dao层返回类型
     */
    public static <T> Pages<T> execute(ISelect select, int pageNum, int pageSize) {

        try (Page<T> page = PageHelper.startPage(pageNum,pageSize)) {
            /*mapper对象操作*/
            page.doSelectPage(select);
            /*返回实体类*/
            Pages<T> tPages = new Pages<>();
            tPages.setPageList(page.getResult());
            tPages.setPages(page.getPages());
            tPages.setSize(page.getPageSize());
            tPages.setTotal(page.getTotal());
            return tPages;
        }
    }

}

使用方法:

返回对象为Pages<dao层实体类>

第一个参数:dao层对象

第二个参数:页码

第三个参数:每页数

    public Pages<ChatMsgRecordPO> chatMsg(Integer scid, Integer rcid, String groupCode, Boolean isGroupMsg, Integer pageSize, Integer pageNum) {
      return Pages.execute(() -> messageDao.chatMsg(scid, rcid) ,pageNum, pageSize);

    }

相关文章:

  • 【Bert】自然语言(Language Model)入门之---Bert
  • 企业内部知识库:安全协作打造企业智慧运营基石
  • leetcode 2585. 获得分数的方法数
  • C/C++ 格式化输出( unsigned long long)
  • vue stores全局状态共享
  • alphafold3本地部署
  • 划分字母区间
  • 【Qt】常用控件(一)
  • 【练习】【二分】力扣热题100 153. 寻找旋转排序数组中的最小值
  • C++ Qt建立一个HTTP服务器
  • 鸿蒙开发:V2版本装饰器之@Monitor装饰器
  • 阐解WiFi信号强度
  • Linux centOS7 bash编程小技巧
  • Vue3中的setup
  • Linux应用之构建命令行解释器(bash进程)
  • vue3之echarts柱状图-圆锥加自动轮播
  • 使用Termux将安卓手机变成随身AI服务器(page assist连接)
  • Pyrhon函数-装饰器第一部分250219
  • C程序设计(第5版)——谭浩强(2)
  • 构建简单RAG代码实现
  • 近七成科创板公司2024年营收增长,285家营收创历史新高
  • 全国人大常委会关于授权国务院在中国(新疆)自由贸易试验区暂时调整适用《中华人民共和国种子法》有关规定的决定
  • 科学家为AI模型设置“防火墙”,以防止被不法分子滥用
  • 北京银行一季度净赚超76亿降逾2%,不良贷款率微降
  • 王毅:为改革完善全球治理作出金砖贡献
  • 京津冀“飘絮之困”如何破解?专家坦言仍面临关键技术瓶颈