티스토리 뷰

키바나에서 아래 코드로 요청을 보내면

아래와 같은 응답을 받을 수 있습니다.

analyzer는 커스텀 analyzer 사용했습니다. tokenizer는 nori를 사용하였고, filter는 shingle를 사용하였습니다.

 

이 값을 자바에서 사용하고 싶다면 아래와 같은 코드를 작성해주시면 됩니다.

AnalyzeRequest request = AnalyzeRequest.withIndexAnalyzer("st_pdt", "nori_discard_1", pdt.getS_name()); 
AnalyzeResponse response = client.indices().analyze(request, RequestOptions.DEFAULT);

List<AnalyzeResponse.AnalyzeToken> tokens = response.getTokens();

for(AnalyzeResponse.AnalyzeToken token : tokens) {
	if(token.getType().equals("shingle")) {
		String term = token.getTerm();
	}
}

withIndexAnalyzer의 첫번째 인자는 "index 이름", 두번째 인자는 "analyzer 이름", 세번째 인자는 "analyzer 할 텍스트"입니다.

 

response 받은 token들은 tokens에 담깁니다. 이후 token은 일반 자바 객체처럼 사용하실 수 있습니다.

 

* 참고 : 아래 링크는 공식 일라스틱 서치 문서입니다. 더 많은 정보를 보실 수 있습니다.

 

 

Analyze API | Java REST Client [7.14] | Elastic

Asynchronous executionedit Executing a AnalyzeRequest can also be done in an asynchronous fashion so that the client can return directly. Users need to specify how the response or potential failures will be handled by passing the request and a listener to

www.elastic.co

 

댓글
댓글쓰기 폼
공지사항
Total
248,385
Today
760
Yesterday
1,065
링크
«   2022/10   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          
글 보관함