<dependency>
<groupId>co.elastic.clients</groupId>
<artifactId>elasticsearch-java</artifactId>
<version>8.9.1</version>
</dependency>
<dependency>
<groupId>jakarta.json</groupId>
<artifactId>jakarta.json-api</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-client</artifactId>
<version>8.9.1</version>
</dependency>
<dependency>
<groupId>com.huaban</groupId>
<artifactId>jieba-analysis</artifactId>
<version>1.0.2</version>
</dependency>
public List<String> analyzer_(String indexName, String word) throws IOException {
String finalIndex = prefix+indexName;
String analyzer = "ik_smart";
AnalyzeResponse analyze = client.indices().analyze(t -> t
.index(finalIndex)
.analyzer(analyzer)
.text(word));
List<AnalyzeToken> tokens = analyze.tokens();
if (CollectionUtils.isEmpty(tokens)){
return Collections.EMPTY_LIST;
}
List<String> list = tokens.stream().map(t -> t.token()).distinct().collect(Collectors.toList());
return list;
}