ES java api使用
时间: 2023-12-10 19:05:09 浏览: 29
ES Java API 是 Elasticsearch 提供的官方 Java 客户端,可以通过它在 Java 程序中访问和操作 Elasticsearch 集群。
以下是使用 ES Java API 进行基本操作的步骤:
1. 添加 Maven 依赖
```xml
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.12.0</version>
</dependency>
```
2. 创建连接
```java
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost", 9200, "http")));
```
3. 创建索引
```java
CreateIndexRequest request = new CreateIndexRequest("index_name");
client.indices().create(request, RequestOptions.DEFAULT);
```
4. 增加文档
```java
IndexRequest request = new IndexRequest("index_name");
request.id("1");
String jsonString = "{" +
"\"user\":\"user1\"," +
"\"postDate\":\"2021-05-01\"," +
"\"message\":\"message1\"" +
"}";
request.source(jsonString, XContentType.JSON);
IndexResponse response = client.index(request, RequestOptions.DEFAULT);
```
5. 查询文档
```java
GetRequest getRequest = new GetRequest("index_name", "1");
GetResponse getResponse = client.get(getRequest, RequestOptions.DEFAULT);
```
6. 更新文档
```java
UpdateRequest request = new UpdateRequest("index_name", "1");
String jsonString = "{" +
"\"message\":\"updated message\"" +
"}";
request.doc(jsonString, XContentType.JSON);
UpdateResponse response = client.update(request, RequestOptions.DEFAULT);
```
7. 删除文档
```java
DeleteRequest request = new DeleteRequest("index_name", "1");
DeleteResponse response = client.delete(request, RequestOptions.DEFAULT);
```
8. 关闭连接
```java
client.close();
```