实现“ES java restapi”步骤如下:
步骤 | 操作 |
---|---|
1 | 创建Maven项目 |
2 | 添加Elasticsearch依赖 |
3 | 创建Elasticsearch客户端 |
4 | 创建索引 |
5 | 添加文档 |
6 | 查询文档 |
7 | 更新文档 |
8 | 删除文档 |
下面是每一步的具体操作及所需代码:
1. 创建Maven项目
首先,我们需要创建一个Maven项目。可以使用以下命令:
mvn archetype:generate -DgroupId=com.example -DartifactId=es-restapi-demo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
这将创建一个名为es-restapi-demo
的Maven项目。
2. 添加Elasticsearch依赖
在项目的pom.xml
文件中,添加Elasticsearch客户端的依赖:
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>7.13.4</version>
</dependency>
这将使我们能够使用Elasticsearch的Java REST API。
3. 创建Elasticsearch客户端
在Java代码中,创建Elasticsearch客户端:
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost", 9200, "http")));
以上代码使用本地的Elasticsearch实例,默认端口为9200。
4. 创建索引
在Java代码中,创建索引:
CreateIndexRequest request = new CreateIndexRequest("my_index");
CreateIndexResponse response = client.indices().create(request, RequestOptions.DEFAULT);
以上代码创建了一个名为my_index
的索引。
5. 添加文档
在Java代码中,添加文档到索引:
IndexRequest request = new IndexRequest("my_index");
request.id("1");
request.source("field1", "value1",
"field2", "value2");
IndexResponse response = client.index(request, RequestOptions.DEFAULT);
以上代码在my_index
索引中添加了一个ID为1
的文档,并设置了两个字段field1
和field2
。
6. 查询文档
在Java代码中,查询文档:
SearchRequest request = new SearchRequest("my_index");
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(QueryBuilders.matchQuery("field1", "value1"));
request.source(sourceBuilder);
SearchResponse response = client.search(request, RequestOptions.DEFAULT);
以上代码查询了my_index
索引中field1
字段的值为value1
的文档。
7. 更新文档
在Java代码中,更新文档:
UpdateRequest request = new UpdateRequest("my_index", "1");
request.doc("field1", "new_value1");
UpdateResponse response = client.update(request, RequestOptions.DEFAULT);
以上代码将ID为1
的文档中的field1
字段的值更新为new_value1
。
8. 删除文档
在Java代码中,删除文档:
DeleteRequest request = new DeleteRequest("my_index", "1");
DeleteResponse response = client.delete(request, RequestOptions.DEFAULT);
以上代码删除了ID为1
的文档。
以上就是实现“ES java restapi”的步骤和代码示例。通过这些操作,你可以使用Java代码与Elasticsearch进行交互,实现索引的创建、文档的添加、查询、更新和删除等功能。希望对你有帮助!