如何在Spring Data Cassandra中对数据进行分页?

问题描述 投票:0回答:1

我使用了CassandraRepository,但无法对数据进行分页。

存储库:

@Repository
public interface AccountDaoInter extends CassandraRepository<Account,String> {
}

CassandraRepository中有一种方法findAll(Pageable pageable);。 (返回类型Slice <>)

我使用CassandraPageRequest创建Pageable。

服务:

@Override
public List<AccountDTO> findAll(Integer page){
    Slice<Account> accounts = accountDaoInter.findAll(CassandraPageRequest.of(page,10));

    return accounts
            .stream()
            .map(account -> modelMapper.map(account,AccountDTO.class)).collect(Collectors.toList());

}

Controller:

@GetMapping
public ResponseEntity<List<AccountDTO>> findAll(@RequestParam(name = "page") Integer p){
    return ResponseEntity.ok(accountServiceInter.findAll(--p));
}

当页面值为1时,结果正常。

当页面值为2或更高时,出现内部服务器错误。

错误:

"Cannot create a Cassandra page request for an indexed page other than the first page (0)."

“错误图片”“ >>

Project

我使用了CassandraRepository,但无法对数据进行分页。存储库:@Repository公共接口AccountDaoInter扩展了CassandraRepository {}有一种方法...

java cassandra spring-data spring-rest
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.