java 获取es 分词后的结果
时间: 2023-01-31 11:01:20 浏览: 487
java连接elasticsearch将搜索结果高亮显示并分页。
你可以使用 Elasticsearch 客户端在 Java 中连接到 Elasticsearch 服务器,然后使用 `Analyze API` 来获取分词后的结果。
首先,你需要在项目中添加 Elasticsearch 客户端的依赖,在 `pom.xml` 中加入如下内容:
```xml
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.10.0</version>
</dependency>
```
然后,你可以连接到 Elasticsearch 服务器,并使用 `AnalyzeRequest` 对象调用 `analyze` 方法来获取分词后的结果:
```java
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.client.indices.AnalyzeRequest;
import org.elasticsearch.client.indices.AnalyzeResponse;
// 创建 Elasticsearch 客户端
RestHighLevelClient client = new RestHighLevelClient(
RestClient.builder(
new HttpHost("localhost", 9200, "http")));
// 创建分析请求对象
AnalyzeRequest request = new AnalyzeRequest();
request.text("这是一个要分词的句子");
// 设置分析器
request.analyzer("ik_smart");
// 执行分析请求
AnalyzeResponse response = client.indices().analyze(request);
// 遍历分词结果
for (AnalyzeResponse.AnalyzeToken token : response.getTokens()) {
System.out.println(token.getTerm());
}
// 关闭客户端
client.close();
```
上面的代码中,我们使用了 `ik_smart` 分析器,这是一种中文分词器,你也可以使用其他分析器,比如英文分词器 `standard`。
注意,这里使用的是 Elasticsearch 7.x 版本的 API,如果你使用的是其他版本
阅读全文