SpringBoot分页查询 页码问题导致返回结果数量为0

SpringBoot分页查询,PageRequest,数据库里有4条记录,但是查出来的结果中,是一个空的数组:

请求内容:

{
    "startTime":"2000-01-01",
    "endTime":"2022-12-31",
    "page":1,
    "size":100,
    "client":{
        "id":2
    }
}

返回:

{
    "content": [], //空的数组
    "pageable": {
        "sort": {
            "sorted": true,
            "unsorted": false
        },
        "offset": 100,
        "pageSize": 100,
        "pageNumber": 1,
        "paged": true,
        "unpaged": false
    },
    "totalElements": 4,
    "totalPages": 1,
}

经过一番探索,找到了原因:原来是请求中的page问题,要请求第一页的数据,实际应该填0,而不是1.

{
    "startTime":"2000-01-01",
    "endTime":"2022-12-31",
    "page":0, //第一页数据应该填0
    "size":100,
    "client":{
        "id":2
    }
}

问题解决。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在Spring Boot中使用MyBatis进行分页查询,可以通过PageHelper插件来实现。首先,确保你已经在项目中引入了PageHelper依赖。可以在`pom.xml`文件中添加以下代码: ```xml <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.3.0</version> </dependency> ``` 接下来,在MyBatis的配置文件中,配置PageHelper插件。可以在`application.properties`文件中添加以下配置: ```properties # 设置分页插件 pagehelper.helper-dialect=mysql pagehelper.params=count=countSql ``` 然后,在你的Mapper接口中定义查询方法。例如,假设你要查询名为`User`的表,并进行分页查询,可以创建一个类似如下的方法: ```java import com.github.pagehelper.Page; import org.apache.ibatis.annotations.Mapper; @Mapper public interface UserMapper { Page<User> findByPage(); } ``` 最后,在你的Service或Controller层中调用该方法,并传入页码参数来实现分页查询。例如,假设你要查询第2页的数据,可以这样调用: ```java import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; @Service public class UserService { @Autowired private UserMapper userMapper; public PageInfo<User> getUsersByPage(int pageNum, int pageSize) { PageHelper.startPage(pageNum, pageSize); Page<User> page = userMapper.findByPage(); return new PageInfo<>(page); } } ``` 这样,`getUsersByPage`方法将返回一个包含分页数据的`PageInfo`对象,其中包括了总页数等信息。 请注意,以上示例是基于MySQL数据库的配置和使用方法。如果你使用的是其他数据库,需要相应地修改`pagehelper.helper-dialect`配置项。 希望以上信息对你有帮助!如有更多问题,请继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鹰信息技术服务部

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值