Package com.mongodb.client.model
Class Indexes
- java.lang.Object
-
- com.mongodb.client.model.Indexes
-
public final class Indexes extends Object
A factory for defining index keys. A convenient way to use this class is to statically import all of its methods, which allows usage like:collection.createIndex(compoundIndex(ascending("x"), descending("y")));- Since:
- 3.1
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static Bsonascending(String... fieldNames)Create an index key for an ascending index on the given fields.static Bsonascending(List<String> fieldNames)Create an index key for an ascending index on the given fields.static BsoncompoundIndex(List<? extends Bson> indexes)compound multiple index specifications.static BsoncompoundIndex(Bson... indexes)create a compound index specifications.static Bsondescending(String... fieldNames)Create an index key for an ascending index on the given fields.static Bsondescending(List<String> fieldNames)Create an index key for an ascending index on the given fields.static Bsongeo2d(String fieldName)Create an index key for a 2d index on the given field.static Bsongeo2dsphere(String... fieldNames)Create an index key for an 2dsphere index on the given fields.static Bsongeo2dsphere(List<String> fieldNames)Create an index key for an ascending index on the given fields.static BsongeoHaystack(String fieldName, Bson additional)Create an index key for a geohaystack index on the given field.static Bsonhashed(String fieldName)Create an index key for a hashed index on the given field.static Bsontext()Create an index key for a text index on every field that contains string data.static Bsontext(String fieldName)Create an index key for a text index on the given field.
-
-
-
Method Detail
-
ascending
public static Bson ascending(String... fieldNames)
Create an index key for an ascending index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- indexes
-
ascending
public static Bson ascending(List<String> fieldNames)
Create an index key for an ascending index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- indexes
-
descending
public static Bson descending(String... fieldNames)
Create an index key for an ascending index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- indexes
-
descending
public static Bson descending(List<String> fieldNames)
Create an index key for an ascending index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- indexes
-
geo2dsphere
public static Bson geo2dsphere(String... fieldNames)
Create an index key for an 2dsphere index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- 2dsphere Index
-
geo2dsphere
public static Bson geo2dsphere(List<String> fieldNames)
Create an index key for an ascending index on the given fields.- Parameters:
fieldNames- the field names, which must contain at least one- Returns:
- the index specification
- MongoDB documentation
- indexes
-
geo2d
public static Bson geo2d(String fieldName)
Create an index key for a 2d index on the given field.Note: A 2d index is for data stored as points on a two-dimensional plane. The 2d index is intended for legacy coordinate pairs used in MongoDB 2.2 and earlier.
- Parameters:
fieldName- the field to create a 2d index on- Returns:
- the index specification
- MongoDB documentation
- 2d index
-
geoHaystack
public static Bson geoHaystack(String fieldName, Bson additional)
Create an index key for a geohaystack index on the given field.Note: For queries that use spherical geometry, a 2dsphere index is a better option than a haystack index. 2dsphere indexes allow field reordering; geoHaystack indexes require the first field to be the location field. Also, geoHaystack indexes are only usable via commands and so always return all results at once..
- Parameters:
fieldName- the field to create a geoHaystack index onadditional- the additional field that forms the geoHaystack index key- Returns:
- the index specification
- MongoDB documentation
- geoHaystack index
-
text
public static Bson text(String fieldName)
Create an index key for a text index on the given field.- Parameters:
fieldName- the field to create a text index on- Returns:
- the index specification
- MongoDB documentation
- text index
-
text
public static Bson text()
Create an index key for a text index on every field that contains string data.- Returns:
- the index specification
- MongoDB documentation
- text index
-
hashed
public static Bson hashed(String fieldName)
Create an index key for a hashed index on the given field.- Parameters:
fieldName- the field to create a hashed index on- Returns:
- the index specification
- MongoDB documentation
- hashed index
-
compoundIndex
public static Bson compoundIndex(Bson... indexes)
create a compound index specifications. If any field names are repeated, the last one takes precedence.- Parameters:
indexes- the index specifications- Returns:
- the compound index specification
- MongoDB documentation
- compoundIndex
-
compoundIndex
public static Bson compoundIndex(List<? extends Bson> indexes)
compound multiple index specifications. If any field names are repeated, the last one takes precedence.- Parameters:
indexes- the index specifications- Returns:
- the compound index specification
- MongoDB documentation
- compoundIndex
-
-