mybatis对查询的数据手动分页

news/2025/3/16 6:18:41/

项目开发中有时候由于查询的数据比较复杂,可能会对查询的到的数据进行一些处理,比如合并,或者筛选掉一部分的数据,那么就无法再查询的时候去进行分页了,而需要将处理之后的集合数据,进行手动分页处理,以下是手动处理分页的案例参考:

   Page<返回的实体对象> resultPage = Mapper.selectData(param);//通过sql查询得到的数据//...中间对resultPage里的Records数据进行了处理,这里省略resultPage.setRecords(resultList);//然后新生成了一个集合对象resultList 把处理之后的数据重新赋值到Records里//手动根据以下几个条件对数据进行分页resultPage.setTotal(resultList.size());//重新对总条目赋值,因为数据改变了long current = param.getPageNo();//页面传入的当前页long pages = param.getPageSize();//页面传入的每页条目long total = resultPage.getTotal();//修改得到的总条数long startIndex=0;//初始条目long endIndex =0;//每页条目long indexPage = (current - 1)*pages;if(indexPage > total){startIndex = 0;}else{startIndex = indexPage;}long pageSize =  current*pages;if(pageSize>total){endIndex = total;}else{endIndex = pageSize;}List<返回的实体对象> paginatedList = resultList.subList((int)startIndex,(int)endIndex);resultPage.setRecords(paginatedList);//分页之后重新赋值到返回的Records对象里return new PageResult<>(resultPage);//最后返回到页面


http://www.ppmy.cn/news/1172904.html

相关文章

安卓 实现60s倒计时的CountDownTimer(小坑)

安卓 实现60s倒计时的CountDownTimer&#xff08;小坑&#xff09; 前言一、CountDownTimer 是什么&#xff1f;二、代码示例1.使用2.小坑的点误差及时取消 总结 前言 前段时间写倒计时没有用线程&#xff0c;想换一种实现方式结果踩了个小坑&#xff0c;特此记录。 一、Count…

mysql图片存取初探

mysql数据库中使用blob存储使用base64加密图片数据 前言 这个方法并不好&#xff0c;因为传输的数据量还是蛮大的&#xff0c;可以存一些诸如头像的小图片&#xff0c;但是如果要存较大的图片会很慢。 不过只是课程作业中简单的功能&#xff0c;这样子简单又快捷&#xff0c;…

LabVIEW应用开发——控件的使用(三)

接上文&#xff0c;这篇介绍簇Cluster控件。 LabVIEW应用开发——控件的使用&#xff08;二&#xff09; 1、簇Cluster 1&#xff09;创建 蔟控件又称为组合、集群控件&#xff0c;顾名思义它是一个类似于C语言的结构体的一个数据结构控件。在描述一个对象的时候&#xff0c;…

全链路压测专题---3、全链路压测具体实现

流量染色 流量识别 要想压测的流量和数据不影响线上真实的生产数据&#xff0c;就需要线上的集群能识别出压测的流量&#xff0c;只要能识别出压测请求的流量&#xff0c;那么流量触发的读写操作就很好统一去做隔离了。 全链路压测发起的都是Http的请求&#xff0c;只需要要…

QTday06(人脸识别项目前置知识)

qt版本5.4.0&#xff1a;旧版本的qt&#xff0c;为啥要用旧版本的我也不知道 实现结果&#xff1a; 调用系统摄像头&#xff0c;用红框框住画面中的人头 代码&#xff1a; pro&#xff1a; #------------------------------------------------- # # Project created by QtC…

点云从入门到精通技术详解100篇-双目鱼眼系统的畸变校正及目标重建(续)

目录 3.3双目鱼眼系统标定 3.4基于光束平差法的标定结果优化 3.5标定实验结果与分析

vscode代码快捷输入

Vscode代码片段快捷输入 常用的代码片段为了避免重复输入,可以使用Vsco的中用户代码片段进行设置,这样就可以实现快捷输入. 操作流程 如下 打开vscode的设置 2. 找到用户代码片段 3. 选择模板 4. 然后写入代码片段即可 上面的代码片段可以设置多个,看自己 重点关注的是 prefi…

spacy.load(“en_core_web_trf“)报错TypeError: issubclass() arg 1 must be a class

使用spacy时遇到的问题 写在最前面&#xff1a; 安装spacy和en_core_web_trf时需要保证二者版本一致 安装及查看对应spacy版本 安装 pip install spacy查看版本 import spacy spacy.__version__安装en_core_web_trf 直接安装&#xff08;如果可以的话&#xff09; pytho…