2017-12-15 4 views
0

는 다음 인덱스 엔티티를 고려검색 용어가있는 필드로 최대 절전 모드로 검색하는 방법이 있습니까?

@Entity 
@Indexed 
public class Document { 

    ... 

    @Field 
    private String title; 

    @Field 
    private String text; 

} 

사용자 검색어가 각각 titletext에서 발견 된 문서의 수와 두 가지 옵션 titletext를 포함하는면을 제시 할 수있는 방법이 있나요? 그리고 사용자는 흥미로운 필드로만 검색 할 수 있도록 이러한 옵션을 선택할 수 있어야합니다. 예를 들어

, 세 가지 문서가 있습니다 :

{ "title" : "One", "text" : "One" } 
{ "title" : "One and Two", "text" : "Two" } 
{ "title" : "Three", "text" : "Three and Two" } 

는 그리고 검색 쿼리는 "하나"입니다 : 다음면 될 것입니다

{ "title" : 2, "text" : 1 } 

답변

1

그러한 내장 기능에 최대 절전 모드 검색.하지만 직접 할 수 있습니다. 대신 단일 쿼리를 실행하는 세 가지를 실행합니다 : "제목이나 텍스트"에 필터를

  1. 하나를 만 "제목"필드에 필터
  2. 하나를 패 시팅 (faceting)없이 "제목 패 시팅 (faceting)과 "필드
  3. 만의 필터
  4. 하나"본문 텍스트 "필드 온 패 시팅 (faceting)와" "

다음 첫 번째 질의의 결과를 수집하는 필드,"제 쿼리 TITLE '면, 및 세 번째 쿼리에서 "텍스트"패싯.

최대 절전 모드에 대한 추가 정보 검색 : https://docs.jboss.org/hibernate/stable/search/reference/en-US/html_single/#query-faceting

관련 문제