1、添加依赖:
首先,你需要在你的 Java 项目中添加 ElasticSearch 的客户端依赖。如果你使用 Maven,可以在 pom.xml 文件中添加如下依赖:
<dependencies>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>你的ElasticSearch客户端版本号</version>
</dependency>
<!-- 如果你还需要其他依赖,比如JSON处理库,可以继续添加 -->
</dependencies>
确保将 你的ElasticSearch客户端版本号 替换为实际使用的 ElasticSearch 客户端版本号。
2、创建连接:
使用 ElasticSearch 的 Java 客户端创建一个连接到 ElasticSearch 集群的实例。这通常涉及指定集群的地址和端口。
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost", 9200, "http")));
在这个例子中,我们假设 ElasticSearch 集群运行在本地主机的默认端口 9200 上。
3、索引文档:
使用客户端实例,你可以将文档索引到 ElasticSearch 中。这通常涉及创建一个索引请求,并指定要索引的文档内容。 I
ndexRequest request = new IndexRequest("your_index_name");
request.id("your_document_id");
String jsonString = "{\"field1\":\"value1\", \"field2\":\"value2\"}";
request.source(jsonString, XContentType.JSON);
IndexResponse response = client.index(request, RequestOptions.DEFAULT);
4、搜索文档:
使用搜索构建器创建搜索请求,并执行搜索以获取结果。
SearchRequest searchRequest = new SearchRequest("your_index_name");
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchQuery("field1", "value1"));
searchRequest.source(searchSourceBuilder);
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
SearchHits hits = searchResponse.getHits();
for (SearchHit hit : hits) {
String sourceAsString = hit.getSourceAsString();
// 处理搜索结果
}
5、关闭连接:
完成所有操作后,确保关闭客户端连接以释放资源。
client.close();