33 lines
2.0 KiB
Plaintext
33 lines
2.0 KiB
Plaintext
|
[[java-rest-high-java-builders]]
|
||
|
== Using Java Builders
|
||
|
|
||
|
The Java High Level REST Client depends on the Elasticsearch core project which provides
|
||
|
different types of Java `Builders` objects, including:
|
||
|
|
||
|
Query Builders::
|
||
|
|
||
|
The query builders are used to create the query to execute within a search request. There
|
||
|
is a query builder for every type of query supported by the Query DSL. Each query builder
|
||
|
implements the `QueryBuilder` interface and allows to set the specific options for a given
|
||
|
type of query. Once created, the `QueryBuilder` object can be set as the query parameter of
|
||
|
`SearchSourceBuilder`. The <<java-rest-high-document-search-request-building-queries, Search Request>>
|
||
|
page shows an example of how to build a full search request using `SearchSourceBuilder` and
|
||
|
`QueryBuilder` objects. The <<java-rest-high-query-builders, Building Search Queries>> page
|
||
|
gives a list of all available search queries with their corresponding `QueryBuilder` objects
|
||
|
and `QueryBuilders` helper methods.
|
||
|
|
||
|
Aggregation Builders::
|
||
|
|
||
|
Similarly to query builders, the aggregation builders are used to create the aggregations to
|
||
|
compute during a search request execution. There is an aggregation builder for every type of
|
||
|
aggregation (or pipeline aggregation) supported by Elasticsearch. All builders extend the
|
||
|
`AggregationBuilder` class (or `PipelineAggregationBuilder`class). Once created, `AggregationBuilder`
|
||
|
objects can be set as the aggregation parameter of `SearchSourceBuilder`. There is a example
|
||
|
of how `AggregationBuilder` objects are used with `SearchSourceBuilder` objects to define the aggregations
|
||
|
to compute with a search query in <<java-rest-high-document-search-request-building-aggs, Search Request>> page.
|
||
|
The <<java-rest-high-aggregation-builders, Building Aggregations>> page gives a list of all available
|
||
|
aggregations with their corresponding `AggregationBuilder` objects and `AggregationBuilders` helper methods.
|
||
|
|
||
|
include::builders/queries.asciidoc[]
|
||
|
include::builders/aggs.asciidoc[]
|