public abstract class Query
extends java.lang.Object
Instantiable subclasses are:
TermQuery
BooleanQuery
WildcardQuery
PhraseQuery
PrefixQuery
MultiPhraseQuery
FuzzyQuery
RegexpQuery
TermRangeQuery
PointRangeQuery
ConstantScoreQuery
DisjunctionMaxQuery
MatchAllDocsQuery
See also the family of Span Queries
and additional queries available in the Queries module
| Constructor and Description |
|---|
Query() |
| Modifier and Type | Method and Description |
|---|---|
protected int |
classHash()
Provides a constant integer for a given class, derived from the name of the class.
|
Weight |
createWeight(IndexSearcher searcher,
boolean needsScores,
float boost)
Expert: Constructs an appropriate Weight implementation for this query.
|
abstract boolean |
equals(java.lang.Object obj)
Override and implement query instance equivalence properly in a subclass.
|
abstract int |
hashCode()
Override and implement query hash code properly in a subclass.
|
Query |
rewrite(IndexReader reader)
Expert: called to re-write queries into primitive queries.
|
protected boolean |
sameClassAs(java.lang.Object other)
Utility method to check whether
other is not null and is exactly
of the same class as this object's class. |
java.lang.String |
toString()
Prints a query to a string.
|
abstract java.lang.String |
toString(java.lang.String field)
Prints a query to a string, with
field assumed to be the
default field and omitted. |
public abstract java.lang.String toString(java.lang.String field)
field assumed to be the
default field and omitted.public final java.lang.String toString()
toString in class java.lang.Objectpublic Weight createWeight(IndexSearcher searcher, boolean needsScores, float boost) throws java.io.IOException
Only implemented by primitive queries, which re-write to themselves.
needsScores - True if document scores (Scorer.score()) are needed.boost - The boost that is propagated by the parent queries.java.io.IOExceptionpublic Query rewrite(IndexReader reader) throws java.io.IOException
java.io.IOExceptionpublic abstract boolean equals(java.lang.Object obj)
QueryCache works properly.
Typically a query will be equal to another only if it's an instance of
the same class and its document-filtering properties are identical that other
instance. Utility methods are provided for certain repetitive code.equals in class java.lang.ObjectsameClassAs(Object),
classHash()public abstract int hashCode()
QueryCache works properly.hashCode in class java.lang.Objectequals(Object)protected final boolean sameClassAs(java.lang.Object other)
other is not null and is exactly
of the same class as this object's class.
When this method is used in an implementation of equals(Object),
consider using classHash() in the implementation
of hashCode() to differentiate different classprotected final int classHash()
Object.hashCode() is that classes may be
assigned different hash codes for each execution and we want hashes to be possibly
consistent to facilitate debugging.Copyright © 2000–2025 The Apache Software Foundation. All rights reserved.