包结构和命名空间客户端

编辑

Elasticsearch API 规模庞大,并按功能组进行组织,如Elasticsearch API 文档所示。

Java API 客户端遵循此结构:功能组称为“命名空间”,每个命名空间都位于co.elastic.clients.elasticsearch的子包中。

每个命名空间客户端都可以从顶级 Elasticsearch 客户端访问。唯一的例外是位于core子包中的“搜索”和“文档”API,它们可以通过主 Elasticsearch 客户端对象访问。

下面的代码片段演示了如何使用索引命名空间客户端创建索引(lambda 语法在构建 API 对象中解释)

// Create the "products" index
ElasticsearchClient client = ...
client.indices().create(c -> c.index("products"));

命名空间客户端是轻量级对象,可以动态创建。