Spring中的分页

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring中的分页相关的知识,希望对你有一定的参考价值。

参考技术A

Spring的 分页类 在spring-data-commons包里。

Pageable : Abstract interface for pagination information. 分页信息的抽象。
PageRequest : Basic Java Bean implementation of Pageable . 对 Pageable 的基本实现。
属性page 页码,以0开始计数为首页,非负,
属性size 一页的大小,大于0,
属性Sort 排序。

常用方法: Pageable : next()下一页,previousOrFirst()前一页。
PageRequest : of(page, size, sort)

Page : A page is a sublist of a list of objects. It allows gain information about the position of it in the containing entire list. 列表的子集,包含了位置信息。
PageImpl : Page 的基本实现。
Page PageImpl 中都会用到 Pageable

默认的分页注解

Spring Data Cassandra 中的分页和排序查询

【中文标题】Spring Data Cassandra 中的分页和排序查询【英文标题】:Paging And Sorting queries in Spring Data Cassandra 【发布时间】:2015-01-14 01:19:48 【问题描述】:

根据 Spring-data-cassandra 文档, http://docs.spring.io/spring-data/cassandra/docs/1.1.1.RELEASE/reference/html/#requirements

支持分页和排序查询,但是,当我使用接口 PagingAndSortingRepository 时,分页查询会引发以下异常:

下面是我的接口定义:

@EnableCassandraRepositories
public interface PersonRepository extends PagingAndSortingRepository<User, String>

。 . .

下面是堆栈跟踪:

Caused by: org.springframework.dao.InvalidDataAccessApiUsageException: neither slice nor page queries are supported yet
 at org.springframework.data.cassandra.repository.query.CassandraQueryMethod.verify(CassandraQueryMethod.java:80)
 at org.springframework.data.cassandra.repository.query.CassandraQueryMethod.<init>(CassandraQueryMethod.java:68)
 at org.springframework.data.cassandra.repository.support.CassandraRepositoryFactory$CassandraQueryLookupStrategy.resolveQuery(CassandraRepositoryFactory.java:106)
 at org.springframework.data.repository.core.support.RepositoryFactorySupport$QueryExecutorMethodInterceptor.<init>(RepositoryFactorySupport.java:357)
 at org.springframework.data.repository.core.support.RepositoryFactorySupport.getRepository(RepositoryFactorySupport.java:192)
 at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.initAndReturn(RepositoryFactoryBeanSupport.java:239)
 at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:225)
 at org.springframework.data.cassandra.repository.support.CassandraRepositoryFactoryBean.afterPropertiesSet(CassandraRepositoryFactoryBean.java:62)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1613)
 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1550)
 ... 11 more

请帮忙!!!

【问题讨论】:

【参考方案1】:

这是一个文档复制/粘贴错误。请输入错误文档的 JIRA 问题。在https://jira.spring.io/browse/DATACASS-56

上跟踪是否支持分页和排序已经存在问题

【讨论】:

似乎没有为 Cassandra 实现。 嗯,我基本上就是这么说的。

以上是关于Spring中的分页的主要内容,如果未能解决你的问题,请参考以下文章

摆脱报告中的分页符

如何避免报表中的分页:创建没有分页符的报表?

Angular 5中的分页索引号

Spring中的分页

Spring Data Cassandra 中的分页和排序查询

Spring Data JPA中的分页问题