IndexSearcher
此类充当核心组件,在搜索过程中读取/搜索索引。
Class 声明 (Class Declaration)
以下是org.apache.lucene.search.IndexSearcher类的声明 -
public class IndexSearcher
extends Searcher
字段 (Field)
以下是org.apache.lucene.index.IndexWriter类的字段 -
- protected int [] docStarts
- protected IndexReader [] subReaders
- 受保护的IndexSearcher [] subSearchers
类构造函数 (Class Constructors)
下表显示了类构造函数的列表 -
S.No. | 构造函数和描述 |
---|---|
1 | IndexSearcher(Directory path) 已过时。 请改用IndexSearcher(IndexReader)。 |
2 | IndexSearcher(Directory path, boolean readOnly) 已过时。 请改用IndexSearcher(IndexReader)。 |
3 | IndexSearcher(IndexReader r) 创建搜索提供的索引的搜索者。 |
4 | IndexSearcher(IndexReader r, ExecutorService executor) 运行使用提供的ExecutorService分别搜索每个段。 |
5 | IndexSearcher(IndexReader reader, IndexReader[] subReaders, int[] docStarts) 专家:直接指定读者,子读者及其docID的开头。 |
6 | IndexSearcher(IndexReader reader, IndexReader[] subReaders, int[] docStarts, ExecutorService executor) 专家:直接指定读者,subReaders及其docID启动,以及ExecutorService。 |
Class Methods
下表显示了不同的类方法 -
S.No. | 方法和描述 |
---|---|
1 | void close() 请注意,如果使用IndexSearcher(IndexReader)构造IndexSearcher,则不会关闭基础IndexReader。 |
2 | Weight createNormalizedWeight(Query query) 为顶级查询创建标准化权重。 |
3 | Document doc(int docID) 返回文档ID的存储字段。 |
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() 返回此搜索器使用的原子子读取器。 |
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个匹配,如果非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) 这类似于搜索(Weight,Filter,int,Sort),但是在这里您可以选择是否应通过指定fillFields来设置返回的FieldDoc实例中的字段。 |
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) 默认情况下,按字段排序时不会计算分数(使用搜索(Query,Filter,int,Sort))。 |
28 | void setSimilarity(Similarity similarity) 专家:设置此搜索器使用的相似性实现。 |
29 | String toString() |
方法继承 (Methods Inherited)
该类继承以下类中的方法 -
- org.apache.lucene.search.Searcher
- java.lang.Object