elasticsearch笔记五:2024最新版ES8Java客户端-Elasticsearch Java 的client API 操作 Elasticsearch client 8.0
在Elasticsearch 8中,Java客户端API已经有所变化。以下是如何使用Elasticsearch Java API的一个简单示例:
首先,确保你的项目中包含了Elasticsearch的依赖。如果你使用的是Maven,可以在pom.xml
中添加如下依赖:
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>8.0.0</version>
</dependency>
以下是一个简单的Java程序,它创建了一个Elasticsearch客户端,并执行了一个基本的搜索请求:
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.client.RestClient;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import java.io.IOException;
public class ElasticsearchExample {
public static void main(String[] args) throws IOException {
// 创建客户端
try (RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(new HttpHost("localhost", 9200, "http")))) {
// 创建搜索请求
SearchRequest searchRequest = new SearchRequest("index_name"); // 替换为你的索引名
// 设置搜索源构建器
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchAllQuery()); // 查询所有文档
searchRequest.source(searchSourceBuilder);
// 执行搜索
SearchResponse searchResponse = client.search(searchRequest, RequestOptions.DEFAULT);
// 处理搜索结果
SearchHits searchHits = searchResponse.getHits();
for (SearchHit hit : searchHits) {
System.out.println(hit.getSourceAsString());
}
}
}
}
在这个例子中,我们创建了一个RestHighLevelClient
实例,用来连接到在localhost
上运行的Elasticsearch实例。然后,我们构建了一个搜索请求,指定了我们要搜索的索引,并设置了一个匹配所有文档的查询。最后,我们执行搜索并打印返回的文档。
请注意,你需要替换index_name
为你实际要搜索的索引名,并确保Elasticsearch服务器运行在localhost
和默认端口9200
上,或者根据你的配置相应修改。
评论已关闭