java操作es8.1
时间: 2023-06-27 17:01:14 浏览: 92
要操作 Elasticsearch(ES) 8.1,需要使用 Java 的 Elasticsearch 客户端 API。以下是使用 Elasticsearch Java 客户端 API 连接到 Elasticsearch 8.1 并进行一些基本操作的步骤:
1. 添加 Elasticsearch Java 客户端 API 依赖
在 Maven 项目中,需要在 pom.xml 文件中添加以下依赖:
```
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.12.1</version>
</dependency>
```
2. 创建 Elasticsearch 客户端
使用以下代码创建 Elasticsearch 客户端:
```
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(new HttpHost("localhost", 9200, "http")));
```
其中,`localhost` 和 `9200` 是 Elasticsearch 服务的主机名和端口号。
3. 创建索引
使用以下代码创建索引:
```
CreateIndexRequest request = new CreateIndexRequest("my_index");
client.indices().create(request, RequestOptions.DEFAULT);
```
其中,`my_index` 是要创建的索引名称。
4. 添加文档
使用以下代码添加文档:
```
IndexRequest request = new IndexRequest("my_index");
request.id("1");
String jsonString = "{\"name\":\"John Doe\",\"age\":25}";
request.source(jsonString, XContentType.JSON);
IndexResponse response = client.index(request, RequestOptions.DEFAULT);
```
其中,`1` 是文档 ID,`name` 和 `age` 是文档字段。
5. 搜索文档
使用以下代码搜索文档:
```
SearchRequest searchRequest = new SearchRequest("my_index");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchQuery("name", "John"));
searchRequest.source(searchSourceBuilder);
SearchResponse response = client.search(searchRequest, RequestOptions.DEFAULT);
```
其中,`name` 是要匹配的字段,`John` 是要匹配的值。
6. 关闭 Elasticsearch 客户端
使用以下代码关闭 Elasticsearch 客户端:
```
client.close();
```
阅读全文