2017-04-25 4 views
0

ElasticsearchのmatchAllQuery()は、私の要求に応じて多くの結果を得るために、出力をどのように増加させるのですか?デフォルトではElasticSearchのmatchAllQuery()

コード

QueryBuilder query = QueryBuilders.matchAllQuery(); 

答えて

1

はいuは行うことができますが、ここであなたが好きなaPageRequestcountを渡すことができますし、 Elastic検索にレコードが存在しないようにするには、repository.count()がそれに適しています: -

int aPageRequestcount = (int) repository.count(); 

NativeSearchQueryBuilder aNativeSearchQueryBuilder = new NativeSearchQueryBuilder(); 
     aNativeSearchQueryBuilder.withIndices(indexName).withTypes(type).withPageable(new PageRequest(0, aPageRequestcount)); 
final BoolQueryBuilder aQuery = new BoolQueryBuilder(); 


NativeSearchQuery nativeSearchQuery = aNativeSearchQueryBuilder.withQuery(aQuery).build(); 
       = elasticsearchTemplate.queryForList(nativeSearchQuery, A.class); 
2

10個の結果が返され、あなたがsizeパラメータ増加する必要があります。

SearchRequestBuilder request = client.prepareSearch(index) 
    .setQuery(QueryBuilders.matchAllQuery()) 
    .setSize(100);