1. IndexSearcher IndexSearcher is to searching what IndexWriter is to indexing. You can
think of IndexSearcher as a class that opens an index in a read-only mode.
2. Term A Term consists of a pair of string elements: the name of the field and the value
of that field.
3. Query Lucene comes with a number of concrete Query subclasses. Query is the common,
abstract parent class. It contains several utility methods, the most interesting of which is
setBoost(float), described in section 3.5.9.
BooleanQuery, BoostingQuery, ConstantScoreQuery, ConstantScoreRangeQuery,
CustomScoreQuery, DisjunctionMaxQuery, FilteredQuery, FuzzyLikeThisQuery,
MatchAllDocsQuery, MoreLikeThisQuery, MultiPhraseQuery, MultiTermQuery, PhraseQuery,
PrefixQuery, RangeQuery, SpanQuery, TermQuery, ValueSourceQuery, FuzzyQuery,
RegexQuery, WildcardQuery
4. TermQuery It’s used for matching documents that contain fields with specific values,
5. Hits The Hits class is a simple container of pointers to ranked search results—documents
that match a given query. For performance reasons, Hits instances don’t load from the index
all documents that match a query, but only a small portion of them at a time.