RestHighLevelClient 创建索引
时间: 2023-11-08 22:57:04 浏览: 110
RestHighLevelClient 是 Elasticsearch 官方提供的 Java 客户端,可以通过它来与 Elasticsearch 进行交互。下面是使用 RestHighLevelClient 创建索引的示例代码:
```java
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(new HttpHost("localhost", 9200, "http")));
CreateIndexRequest request = new CreateIndexRequest("my_index");
request.settings(Settings.builder()
.put("index.number_of_shards", 3)
.put("index.number_of_replicas", 2)
);
XContentBuilder builder = XContentFactory.jsonBuilder();
builder.startObject();
{
builder.startObject("properties");
{
builder.startObject("title");
{
builder.field("type", "text");
}
builder.endObject();
builder.startObject("content");
{
builder.field("type", "text");
}
builder.endObject();
}
builder.endObject();
}
builder.endObject();
request.mapping(builder);
CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);
```
以上代码中,首先创建了一个 RestHighLevelClient 实例,然后创建了一个 CreateIndexRequest 对象,指定了索引名称以及一些索引的配置信息,例如分片数、副本数等。接着使用 XContentBuilder 构建了索引的映射,定义了 title 和 content 两个字段的类型为 text。最后调用 indices().create() 方法创建索引,返回一个 CreateIndexResponse 对象。
阅读全文