Lucene-쿼리 프로그래밍
우리는 이전 장에서 보았습니다 Lucene - Search Operation, Lucene은 IndexSearcher를 사용하여 검색을하고 QueryParser에서 생성 한 Query 객체를 입력으로 사용합니다. 이 장에서는 다양한 유형의 Query 객체와이를 프로그래밍 방식으로 생성하는 다양한 방법에 대해 설명합니다. 다양한 유형의 Query 객체를 생성하면 검색 유형을 제어 할 수 있습니다.
사용자에게 검색 결과를 제한하는 여러 옵션이 제공되는 많은 애플리케이션에서 제공하는 고급 검색의 경우를 고려하십시오. 쿼리 프로그래밍을 통해 우리는 매우 쉽게 동일한 결과를 얻을 수 있습니다.
다음은 당분간 논의 할 쿼리 유형 목록입니다.
S. 아니. | 클래스 및 설명 |
---|---|
1 | TermQuery
이 클래스는 인덱싱 프로세스 중에 인덱스를 생성 / 업데이트하는 핵심 구성 요소 역할을합니다. |
2 | TermRangeQuery
TermRangeQuery는 텍스트 용어 범위를 검색 할 때 사용됩니다. |
삼 | PrefixQuery
PrefixQuery는 색인이 지정된 문자열로 시작하는 문서를 일치시키는 데 사용됩니다. |
4 | BooleanQuery
BooleanQuery는 다음을 사용하여 여러 쿼리의 결과 인 문서를 검색하는 데 사용됩니다. AND, OR 또는 NOT 연산자. |
5 | PhraseQuery
구문 쿼리는 특정 용어 시퀀스가 포함 된 문서를 검색하는 데 사용됩니다. |
6 | WildCardQuery
WildcardQuery는 문자 시퀀스에 대해 '*'와 같은 와일드 카드를 사용하여 문서를 검색하는 데 사용됩니다. 단일 문자와 일치합니다. |
7 | FuzzyQuery
FuzzyQuery는 편집 거리 알고리즘을 기반으로하는 대략적인 검색 인 퍼지 구현을 사용하여 문서를 검색하는 데 사용됩니다. |
8 | MatchAllDocsQuery
이름에서 알 수 있듯이 MatchAllDocsQuery는 모든 문서와 일치합니다. |