Как данные эластичного поиска пружины используют смещение и ограничение для запроса - PullRequest
0 голосов
/ 19 сентября 2019

Как пружинные данные elastisearch используют смещение и предел для запроса.Я хочу использовать смещение и ограничение параметров для запроса страницы. Но я не могу найти методы поддержки.Например:

    queryBuild.withPageable(PageRequest.of(pageIndex, pageSize));
    Page<Content> content = elasticsearchOperations.queryForPage(queryBuild.build(),Content.class);

все может быть в порядке

Но я не могу найти метод со смещением и пределом

    queryBuild.withPageable(PageRequest.of(offset, limit));

1 Ответ

0 голосов
/ 20 сентября 2019

Это не поддерживается в spring-data-es (или в ЛЮБОМ проекте spring-data), поэтому вам придется предоставить собственную реализацию для интерфейса Pageable

Взгляните здесь или здесь и здесь если вы попытаетесь использовать вариант репозитория (расширение ElasticsearchRepository<...,...>) и реализовать свой собственный.

Затем выполнитезапрос, как вы заметили, с

PageRequest p = new MyOwnPageRequest(offset, limit);
SearchQuery sq = new NativeSearchQueryBuilder()
            .withQuery(matchAllQuery())
            .withPageable(p)
            .build();

Page<SampleEntity> result = elasticsearchTemplate.queryForPage(sq, SampleEntity.class);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...