You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Page接口getTotalElements()返回总条数还是Pageable传入的size值?

关于Spring Data JPA Page.getTotalElements()的返回值问题

嘿,这个问题问得很到位,我来给你讲明白:

当你的查询实际匹配50条数据,且Pageable的size设为10时,调用getTotalElements()返回的结果是50,不是10。

为啥呢?Spring Data JPA里的Page对象就是专门用来封装分页相关完整信息的:

  • getContent():返回当前页的具体数据,也就是这时候会拿到10条记录
  • getTotalElements():返回的是符合查询条件的所有记录的总数,也就是你说的50条
  • 另外你还可以通过getTotalPages()拿到总页数(这里就是5页),getSize()拿到你设置的每页大小(10)

对了,顺便提一嘴你代码里的小问题:你的@Query写法有问题哦,如果是用原生SQL的话,需要加上nativeQuery=true,而且:searchType = ':searchParam'里的单引号会把searchParam当成字符串字面量,应该去掉单引号写成:searchType = :searchParam;如果是JPQL的话,不能直接写SELECT * FROM ABC,得写成SELECT a FROM Abc a WHERE a.#{#searchType} = :searchParam AND a.status IN ('ACTIVE','PENDING'),不然会报错的。

内容的提问来源于stack exchange,提问作者aayoustic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:47:24