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 |
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