pagehelper,pageinfo用法[通俗易懂]

pagehelper,pageinfo用法[通俗易懂]pagehelper,从pageinfo中取到的total不正确的处理。最近在使用pagehelper时遇到一些问题。2个类似的查询都用的PageHelper.startPage进行分页,A方法pageinfo中取出来的total,pages是正确的,B方法取出来的确不对,pages始终等于1,total始终等于pageSize。很奇怪!仔细对照了两个方法之后找到了原因。方法A:这是se…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

pagehelper,从pageinfo 中取到的total不正确的处理。

最近在使用pagehelper时遇到一些问题。2个类似的查询都用的PageHelper.startPage进行分页,A方法pageinfo中取出来的total,pages是正确的,B方法取出来的确不对,pages始终等于1,total 始终等于pageSize。很奇怪!仔细对照了两个方法之后找到了原因。
方法A:
这是service 里面的方法

public ResultVO getAllActivity() {
		PageHelper.startPage(pageNum,pageSize);
		List<Activity> list = activityMapper.getAllActivity();
		PageInfo<Activity> pageInfo = new PageInfo<Activity>(list);
		if (list!=null&&list.size()!=0) {
			.........	
			对list的逻辑处理
		}
	

Jetbrains全家桶1年46,售后保障稳定

这样从pageinfo中取出来的数据都是正确的。

方法B:
这是service 里面的方法

public ResultVO getAllUser() {
		PageHelper.startPage(pageNum,pageSize);
		List<User> list = userMapper.getAllUser();
		if (list!=null&&list.size()!=0) {
			for(User user : list){
				UserVO userVO = DozerBeanMapperUtil.getMapper().map(user, UserVO.class);
				....
			}
		}
		PageInfo<Activity> pageInfo = new PageInfo<Activity>(list);	
	}

这样从pageinfo中取出来的数据就不正确了。

我仔细对比了下,方法B 错误的原因是 我在service方法里面对查询出来的数据进行了别的操作。所以再使用pagehelper时取出来的数据就有问题。我尝试在方法B 的service 里面删除了if判断里面的代码,直接返回list,或者
把PageInfo pageInfo = new PageInfo(list); 紧跟在
List list = userMapper.getAllUser();后面。
结果pageinfo里面的total 和 pages 就正确了。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/227641.html原文链接:https://javaforall.net

(0)
上一篇 2025年6月20日 上午11:15
下一篇 2025年6月20日 上午11:43


相关推荐

  • Java程序设计(基础)- 基本语法

    Java程序设计(基础)- 基本语法

    2021年7月21日
    58
  • MVC框架概述

    MVC框架概述何谓 MVC ModelViewCon M 是指业务模型 V 是指用户界面 C 则是控制器 使用 MVC 的目的是将 M 和 V 的实现代码分离 从而使同一个程序可以使用不同的表现形式 比如统计学生数据可以分别用柱状图 饼形图来表示 C 存在的目的则是确保 M 和 V 的同步 一旦 M 改变 V 应该同步更新

    2026年3月18日
    1
  • 【目录】python全栈工程师

    【目录】python全栈工程师第一阶段:Python语言核心编程1.Python核心–2048游戏核心算法2.面向对象–天龙八部游戏技能系统3.Python高级–集成操作框架项目:2048游戏第二阶段:

    2022年7月5日
    28
  • 上那学计算机,从零开始学电脑(学电脑从哪开始)

    上那学计算机,从零开始学电脑(学电脑从哪开始)从零开始学电脑(学电脑从哪开始)如今,手机已经成为我们生活中不可缺少的必需品,各种手机应用软件的层出不穷,使得智能手机占据了互联网的半壁江山,似乎手机无所不能了,平时,很多人觉得一手机在手便可以仗剑走天涯,但当我们走进职场,你就会发现,对于办公而言,手机还是有很大的局限性,掌握电脑知识,熟悉电脑基本操作是胜任工作的必备技能。真是“书到用时方恨少”。今天开始,涛哥就带你走进电脑的世界,让你从电脑小白…

    2022年5月3日
    53
  • SpringBoot-LCN5.0.2分布式事务框架整合

    SpringBoot-LCN5.0.2分布式事务框架整合LCN 分布式事务框架整合场景图 我们是要在订单服务中 调用库存服务 当下一个订单的时候 就对库存 1 操作 1 首先要把 tx manager 分布式协调者 项目搭建起来我这里使用的是最新的 lcn 版本依赖 dependency groupId com codingapi txlcn groupId dependency

    2026年3月17日
    2
  • 【EDA】Mutisim基于Multisim的带通滤波器仿真设计实验「建议收藏」

    【EDA】Mutisim基于Multisim的带通滤波器仿真设计实验「建议收藏」基于Multisim的带通滤波器仿真设计实验【实验目的】熟悉Multsim电路仿真软件;熟悉并了解Multsim在模拟电子线路中的应用;掌握Multisim电路仿真设计;掌握Multsim电路分析和仿真测试。【实验要求】利用Multisim软件仿真设计一个二阶有源带通滤波器电路。带通滤波器是指能通过某一频率范围内的频率分量、但将其他范围的频率分量衰减到极低水平的滤波器。。【实验内容】1、滤波器性能指标技术要求:(1)中心频率处电压增益为:10倍;(2)频带宽度为:10-20KHz。2

    2022年5月29日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号