Spring 数据 Mongodb 反应性存储库中 findAll 方法的分页
Pagination for a findAll method in Spring Data Mongodb Reactive repositories
已经有 和 ReactiveCrudRepository
。接受的解决方案适用于遵循 findBy
格式的查询。项目文档还引用了该用法:
Example 158. Basic repository interface to persist Person entities
public interface ReactivePersonRepository extends
ReactiveSortingRepository<Person, String> {
Flux<Person> findByFirstname(String firstname);
Flux<Person> findByFirstname(Publisher<String> firstname);
Flux<Person> findByFirstnameOrderByLastname(String firstname,
Pageable pageable);
Mono<Person> findByFirstnameAndLastname(String firstname, String
lastname);
Mono<Person> findFirstByLastname(String lastname);
}
问题是这对 findAll 不起作用:
interface CustomerRepository : ReactiveCrudRepository<Customer, String> {
fun findAll(pageable: Pageable): Flux<Customer>
异常:
Caused by: org.springframework.data.mapping.PropertyReferenceException: No property findAll found for type Customer!
Spring 数据 MongoDB 是否以某种方式支持这一点?
首先findAll(Pageable pageable)
是PagingAndSortingRepository
的一个方法。 Spring数据支持使用findBy
方法查询,与findAll(Pageable pageable)
.
无关
Currently Reactive Spring Data MongoDB 不支持任何类似 findAll(pageable: Pageable)
的方法,但有一种方法可以做到。
interface CustomerRepository : ReactiveSortingRepository<Customer, String> {
fun findByIdNotNull(pageable: Pageable): Flux<Customer>
}
您可以从
中阅读更多详细信息
已经有 ReactiveCrudRepository
。接受的解决方案适用于遵循 findBy
格式的查询。项目文档还引用了该用法:
Example 158. Basic repository interface to persist Person entities
public interface ReactivePersonRepository extends ReactiveSortingRepository<Person, String> { Flux<Person> findByFirstname(String firstname); Flux<Person> findByFirstname(Publisher<String> firstname); Flux<Person> findByFirstnameOrderByLastname(String firstname, Pageable pageable); Mono<Person> findByFirstnameAndLastname(String firstname, String lastname); Mono<Person> findFirstByLastname(String lastname); }
问题是这对 findAll 不起作用:
interface CustomerRepository : ReactiveCrudRepository<Customer, String> {
fun findAll(pageable: Pageable): Flux<Customer>
异常:
Caused by: org.springframework.data.mapping.PropertyReferenceException: No property findAll found for type Customer!
Spring 数据 MongoDB 是否以某种方式支持这一点?
首先findAll(Pageable pageable)
是PagingAndSortingRepository
的一个方法。 Spring数据支持使用findBy
方法查询,与findAll(Pageable pageable)
.
Currently Reactive Spring Data MongoDB 不支持任何类似 findAll(pageable: Pageable)
的方法,但有一种方法可以做到。
interface CustomerRepository : ReactiveSortingRepository<Customer, String> {
fun findByIdNotNull(pageable: Pageable): Flux<Customer>
}
您可以从