我有一个非常简单的要求,我需要根据为索引设置的默认分析器获取搜索词的分析文本。
我正在使用分析API https://www.elastic.co/guide/en/elasticsearch/reference/1.7/indices-analyze.html获取所需的 token 。
我可以使用curl
请求获取它。
我正在使用2.X版本的ES和 JEST 库。我调查了 JEST 库的各种文件,但找不到对进行分析 API调用的支持。
最佳答案
您可以在下面的代码中。
List<String> tokens = new ArrayList<>();
Action analyze = new Analyze.Builder().source("apple").build();
JestResult result = client.execute(analyze);
if (result.isSucceeded()) {
JsonElement tokenElement = result.getJsonObject().get("tokens");
if (tokenElement != null) {
JsonArray tokens = tokenElement.getAsJsonArray();
for (int i = 0; i < tokens.size(); i++) {
tokens.add(tokens.get(i).getAsJsonObject().get("token").getAsString());
}
}
}
return tokens;
这对我来说可以。
关于java - 使用JEST进行分析API调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54033802/