| 12345678910111213141516171819202122232425262728293031323334353637383940 | [[java-query-dsl]]== Query DSLElasticsearch provides a full Java query dsl in a similar manner to theREST {ref}/query-dsl.html[Query DSL]. The factory for querybuilders is `QueryBuilders`. Once your query is ready, you can use the<<java-search,Search API>>.To use `QueryBuilders` just import them in your class:[source,java]--------------------------------------------------import static org.elasticsearch.index.query.QueryBuilders.*;--------------------------------------------------Note that you can easily print (aka debug) JSON generated queries using`toString()` method on `QueryBuilder` object.The `QueryBuilder` can then be used with any API that accepts a query,such as `count` and `search`.:query-dsl-test: {docdir}/../../client/rest-high-level/src/test/java/org/elasticsearch/client/documentation/QueryDSLDocumentationTests.javainclude::query-dsl/match-all-query.asciidoc[]include::query-dsl/full-text-queries.asciidoc[]include::query-dsl/term-level-queries.asciidoc[]include::query-dsl/compound-queries.asciidoc[]include::query-dsl/joining-queries.asciidoc[]include::query-dsl/geo-queries.asciidoc[]include::query-dsl/special-queries.asciidoc[]include::query-dsl/span-queries.asciidoc[]:query-dsl-test!:
 |