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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • centos7.6安装docker_centos docker安装部署

    centos7.6安装docker_centos docker安装部署前言前面一篇学了mac安装docker,这篇来学习在linux上安装docker环境准备Docker支持以下的CentOS版本,目前,CentOS仅发行版本中的内核支持Docker。Doc

    2022年7月31日
    7
  • 【Stream流】Sort排序详解「建议收藏」

    【Stream流】Sort排序详解「建议收藏」很多时候由于需求的复杂性,很多直接从数据库查出的数据并不能直接返回前端,需要进行处理,处理之后又需要排序,这时候一般都会使用Stream流的Sort排序场景一:普通排序正序(升序)list=list.stream().sorted().collect(Collectors.toList());或者list.stream().sorted(Comparator.comparing(Student::getAge))倒序(降序)list.stream().sorted(Comparator.

    2022年8月12日
    9
  • log4cxx 简介

    log4cxx 简介Log4cxx是开放源代码项目ApacheLoggingService的子项目之一,用于为C++程序提供日志功能,以便开发者对目标程序进行调试和审计。本文对log4cxx的使用及配置进行介绍,并给出一个可以快速开始的实例。最后,针对日志服务给出一些实践方面的建议。1.       介绍Log4cxx是开放源代码项目ApacheLoggingService的子项目之一,是Jav

    2022年6月24日
    53
  • 网络爬虫信息之实战淘宝书包信息爬取14「建议收藏」

    网络爬虫信息之实战淘宝书包信息爬取14「建议收藏」#导入requests和re正则库importrequestsimportre#定义第一个函数实现获取网页数据defgetHTMLText(url,loginheaders):try:r=requests.get(url,headers=loginheaders,timeout=30)r.raise_for_status()…

    2022年6月24日
    23
  • Jmeter接口测试实例讲解

    Jmeter接口测试实例讲解一 测试需求描述 1 本次测试的接口为 http 服务端接口 2 接口的主要分成两类 一类提供给查询功能接口 一类提供保存数据功能接口 这里我们举例 2 个保存数据的接口 因为这两个接口有关联性 比较有代表性 3 接口描述 保存信用卡账户信息接口 传入参数 args clientNo

    2025年9月16日
    2
  • Gradle 15分钟入门教程

    1-Gradle入门介绍在阅读或实践本文中的实例前,必须首先确保已将Gradle插件安装到Eclipse中。如果没有,可以点击下面的链接查看Gradle安装说明: – http://www.yiibai.com/gradle/how-install-gradle-windows.html本教程的目标:这是项目完成后的代码结构图: 2-创建Gradle

    2022年4月4日
    43

发表回复

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

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