Lucene IndexSearcher類


此類充當讀取/在搜尋過程中搜尋索引的一個核心組成部分。

Class 宣告

以下是org.apache.lucene.search.IndexSearcher類的宣告:

public class IndexSearcher
   extends Searcher

欄位

以下是org.apache.lucene.index.IndexWriter類的欄位:

  • protected int[] docStarts

  • protected IndexReader[] subReaders

  • protected IndexSearcher[] subSearchers

類別建構函式

S.N. 建構函式和說明
1 IndexSearcher(Directory path)
不推薦使用。使用IndexSearcher(IndexReader) 代替
2 IndexSearcher(Directory path, boolean readOnly)
不推薦使用。使用IndexSearcher(IndexReader) 代替
3 IndexSearcher(IndexReader r)
建立一個搜尋searching提供索引
4 IndexSearcher(IndexReader r, ExecutorService executor)
執行搜尋單獨各段,使用提供的ExecutorService
5 IndexSearcher(IndexReader reader, IndexReader[] subReaders, int[] docStarts)
直接指定讀取器,subReaders 和 docID 啟動
6 IndexSearcher(IndexReader reader, IndexReader[] subReaders, int[] docStarts, ExecutorService executor)
直接指定讀取器,subReaders和 docID 開始,和一個ExecutorService

類方法

S.N. 方法及說明
1 void close()
需要注意的是底層IndexReader沒有關閉,如果是IndexSearcher用IndexSearcher(IndexReader r)構造
2 Weight createNormalizedWeight(Query query)
建立了一個規範化的重量為頂層查詢
3 Document doc(int docID)
返回文件儲存 i 欄位
4 Document doc(int docID, FieldSelector fieldSelector)
獲取文件在第n個位置
5 int docFreq(Term term)
返回這兩個字 docFreq 的總數
6 Explanation explain(Query query, int doc)
返回描述如何打進DOC對查詢的說明
7 Explanation explain(Weight weight, int doc)
低層次的實現方法返回描述如何打進DOC對重量的解釋
8 protected void gatherSubReaders(List allSubReaders, IndexReader r) 
9 IndexReader getIndexReader()
返回搜尋IndexReader
10 Similarity getSimilarity()
返回使用該搜尋器的相似執行
11 IndexReader[] getSubReaders()
返回此搜尋原子subReaders
12 int maxDoc()
返回比最大可能的文件數目多一個
13 Query rewrite(Query original)
所謂的重新編寫查詢到原始查詢
14 void search(Query query, Collector results)
低階別的搜尋API
15 void search(Query query, Filter filter, Collector results)
低階別的搜尋API
16 TopDocs search(Query query, Filter filter, int n)
找到前n點選查詢,應用過濾器,如果非空(no null)
17 TopFieldDocs search(Query query, Filter filter, int n, Sort sort)
搜尋執行任意排序
18 TopDocs search(Query query, int n)
找到前n點選查詢
19 TopFieldDocs search(Query query, int n, Sort sort)
搜尋執行任意排序並且不用過濾
20 void search(Weight weight, Filter filter, Collector collector)
低階別的搜尋API
21 TopDocs search(Weight weight, Filter filter, int nDocs)
低層次的搜尋實現
22 TopFieldDocs search(Weight weight, Filter filter, int nDocs, Sort sort)
低層次的搜尋實現任意排序
23 protected TopFieldDocs search(Weight weight, Filter filter, int nDocs, Sort sort, boolean fillFields)
就像search(Weight, Filter, int, Sort),選擇是否在返回 FieldDoc 範例欄位應該通過指定fillFields進行設定
24 protected TopDocs search(Weight weight, Filter filter, ScoreDoc after, int nDocs)
低層次的搜尋實現
25 TopDocs searchAfter(ScoreDoc after, Query query, Filter filter, int n)
找到前n點選查詢,應用過濾器,如果非空,所有的結果都是一個結果(後)。
26 TopDocs searchAfter(ScoreDoc after, Query query, int n)
找到前n點選查詢,所有結果都是一個結果(後)
27 void setDefaultFieldSortScoring(boolean doTrackScores, boolean doMaxScore)
預設情況下,分數是由欄位(using search(Query,Filter,int,Sort)) 排序計算
28 void setSimilarity(Similarity similarity)
設定使用搜尋器的相似執行。
29 String toString() 

繼承的方法

這個類繼承了以下類方法:

  • org.apache.lucene.search.Searcher

  • java.lang.Object