Class DBCollection
- java.lang.Object
-
- com.mongodb.DBCollection
-
@ThreadSafe public class DBCollection extends Object
Implementation of a database collection. A typical invocation sequence is thus:
To get a collection to use, just specify the name of the collection to the getCollection(String collectionName) method:MongoClient mongoClient = new MongoClient(new ServerAddress("localhost", 27017)); DB db = mongoClient.getDB("mydb"); DBCollection collection = db.getCollection("test");
Once you have the collection object, you can insert documents into the collection:DBCollection coll = db.getCollection("testCollection");
To show that the document we inserted in the previous step is there, we can do a simple findOne() operation to get the first document in the collection:BasicDBObject doc = new BasicDBObject("name", "MongoDB").append("type", "database") .append("count", 1) .append("info", new BasicDBObject("x", 203).append("y", 102)); coll.insert(doc);
SeeDBObject myDoc = coll.findOne(); System.out.println(myDoc);Mongo.getDB(String)for further information about the effective deprecation of this class.- MongoDB documentation
- Collection
-
-
Field Summary
Fields Modifier and Type Field Description static StringID_FIELD_NAME
-
Constructor Summary
Constructors Modifier Constructor Description protectedDBCollection(DB database, String name)Initializes a new collection.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddOption(int option)Deprecated.Replaced withDBCursor.addOption(int)AggregationOutputaggregate(DBObject firstOp, DBObject... additionalOps)Deprecated.Useaggregate(List, AggregationOptions)insteadAggregationOutputaggregate(List<? extends DBObject> pipeline)Deprecated.Useaggregate(List, AggregationOptions)insteadCursoraggregate(List<? extends DBObject> pipeline, AggregationOptions options)Method implements aggregation framework.Cursoraggregate(List<? extends DBObject> pipeline, AggregationOptions options, ReadPreference readPreference)Method implements aggregation framework.AggregationOutputaggregate(List<? extends DBObject> pipeline, ReadPreference readPreference)Deprecated.Useaggregate(List, AggregationOptions, ReadPreference))} insteadlongcount()Same asgetCount()longcount(DBObject query)Same asgetCount(DBObject)longcount(DBObject query, DBCollectionCountOptions options)Get the count of documents in collection that would match a criteria.longcount(DBObject query, ReadPreference readPreference)Get the count of documents in collection that would match a criteria.voidcreateIndex(DBObject keys)Creates an index on the field specified, if that index does not already exist.voidcreateIndex(DBObject keys, DBObject options)Creates an index on the field specified, if that index does not already exist.voidcreateIndex(DBObject keys, String name)Forces creation of an index on a set of fields, if one does not already exist.voidcreateIndex(DBObject keys, String name, boolean unique)Forces creation of an index on a set of fields, if one does not already exist.voidcreateIndex(String name)Forces creation of an ascending index on a field with the default options.Listdistinct(String fieldName)Find the distinct values for a specified field across a collection and returns the results in an array.Listdistinct(String fieldName, DBCollectionDistinctOptions options)Find the distinct values for a specified field across a collection and returns the results in an array.Listdistinct(String fieldName, DBObject query)Find the distinct values for a specified field across a collection and returns the results in an array.Listdistinct(String fieldName, DBObject query, ReadPreference readPreference)Find the distinct values for a specified field across a collection and returns the results in an array.Listdistinct(String fieldName, ReadPreference readPreference)Find the distinct values for a specified field across a collection and returns the results in an array.voiddrop()Drops (deletes) this collection from the database.voiddropIndex(DBObject index)Drops an index from this collection.voiddropIndex(String indexName)Drops the index with the given name from this collection.voiddropIndexes()Drop all indexes on this collection.voiddropIndexes(String indexName)Drops the index with the given name from this collection.CommandResultexplainAggregate(List<? extends DBObject> pipeline, AggregationOptions options)Return the explain plan for the aggregation pipeline.DBCursorfind()Select all documents in collection and get a cursor to the selected documents.DBCursorfind(DBObject query)Select documents in collection and get a cursor to the selected documents.DBCursorfind(DBObject query, DBCollectionFindOptions options)Select documents in collection and get a cursor to the selected documents.DBCursorfind(DBObject query, DBObject projection)Select documents in collection and get a cursor to the selected documents.DBCursorfind(DBObject query, DBObject projection, int numToSkip, int batchSize)Deprecated.useDBCursor.skip(int)andDBCursor.batchSize(int)on theDBCursorreturned fromfind(DBObject, DBObject)DBCursorfind(DBObject query, DBObject projection, int numToSkip, int batchSize, int options)Deprecated.useDBCursor.skip(int),DBCursor.batchSize(int)andDBCursor.setOptions(int)on theDBCursorreturned fromfind(DBObject, DBObject)DBObjectfindAndModify(DBObject query, DBCollectionFindAndModifyOptions options)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject update)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject sort, DBObject update)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, boolean bypassDocumentValidation, long maxTime, TimeUnit maxTimeUnit)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, boolean bypassDocumentValidation, long maxTime, TimeUnit maxTimeUnit, WriteConcern writeConcern)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, long maxTime, TimeUnit maxTimeUnit)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, long maxTime, TimeUnit maxTimeUnit, WriteConcern writeConcern)Atomically modify and return a single document.DBObjectfindAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, WriteConcern writeConcern)Atomically modify and return a single document.DBObjectfindAndRemove(DBObject query)Atomically remove and return a single document.DBObjectfindOne()Get a single document from collection.DBObjectfindOne(DBObject query)Get a single document from collection.DBObjectfindOne(DBObject query, DBCollectionFindOptions findOptions)Get a single document from collection.DBObjectfindOne(DBObject query, DBObject projection)Get a single document from collection.DBObjectfindOne(DBObject query, DBObject projection, DBObject sort)Get a single document from collection.DBObjectfindOne(DBObject query, DBObject projection, DBObject sort, ReadPreference readPreference)Get a single document from collection.DBObjectfindOne(DBObject query, DBObject projection, ReadPreference readPreference)Get a single document from collection.DBObjectfindOne(Object id)Get a single document from collection by '_id'.DBObjectfindOne(Object id, DBObject projection)Get a single document from collection by '_id'.DBCollectiongetCollection(String name)Find a collection that is prefixed with this collection's name.longgetCount()Get the count of documents in collection.longgetCount(DBObject query)Get the count of documents in collection that would match a criteria.longgetCount(DBObject query, DBCollectionCountOptions options)Get the count of documents in collection that would match a criteria.longgetCount(DBObject query, DBObject projection)Deprecated.longgetCount(DBObject query, DBObject projection, long limit, long skip)Deprecated.longgetCount(DBObject query, DBObject projection, long limit, long skip, ReadPreference readPreference)Deprecated.longgetCount(DBObject query, DBObject projection, ReadPreference readPreference)Deprecated.longgetCount(ReadPreference readPreference)Get the count of documents in collection.DBgetDB()Returns the database this collection is a member of.DBDecoderFactorygetDBDecoderFactory()Get the decoder factory for this collection.DBEncoderFactorygetDBEncoderFactory()Get the encoder factory for this collection.StringgetFullName()Get the full name of a collection, with the database name as a prefix.List<DBObject>getHintFields()Deprecated.PreferDBCursor.hint(DBObject)List<DBObject>getIndexInfo()Return a list of the indexes for this collection.protected Class<? extends DBObject>getInternalClass(String path)Gets the internal class for the given path in the document hierarchyStringgetName()Get the name of a collection.ClassgetObjectClass()Gets the default class for objects in the collectionintgetOptions()Deprecated.Replaced withDBCursor.getOptions()ReadConcerngetReadConcern()Get the read concern for this collection.ReadPreferencegetReadPreference()Gets theReadPreference.CommandResultgetStats()The collStats command returns a variety of storage statistics for a given collectionWriteConcerngetWriteConcern()Get theWriteConcernfor this collection.DBObjectgroup(DBObject key, DBObject cond, DBObject initial, String reduce)Deprecated.The group command was deprecated in MongoDB 3.4DBObjectgroup(DBObject key, DBObject cond, DBObject initial, String reduce, String finalize)Deprecated.The group command was deprecated in MongoDB 3.4DBObjectgroup(DBObject key, DBObject cond, DBObject initial, String reduce, String finalize, ReadPreference readPreference)Deprecated.The group command was deprecated in MongoDB 3.4DBObjectgroup(GroupCommand cmd)Deprecated.The group command was deprecated in MongoDB 3.4DBObjectgroup(GroupCommand cmd, ReadPreference readPreference)Deprecated.The group command was deprecated in MongoDB 3.4BulkWriteOperationinitializeOrderedBulkOperation()Creates a builder for an ordered bulk write operation, consisting of an ordered collection of write requests, which can be any combination of inserts, updates, replaces, or removes.BulkWriteOperationinitializeUnorderedBulkOperation()Creates a builder for an unordered bulk operation, consisting of an unordered collection of write requests, which can be any combination of inserts, updates, replaces, or removes.WriteResultinsert(DBObject... documents)Insert documents into a collection.WriteResultinsert(DBObject[] documents, WriteConcern writeConcern)Insert documents into a collection.WriteResultinsert(DBObject[] documents, WriteConcern aWriteConcern, DBEncoder encoder)Insert documents into a collection.WriteResultinsert(DBObject document, WriteConcern writeConcern)Insert a document into a collection.WriteResultinsert(WriteConcern writeConcern, DBObject... documents)Insert documents into a collection.WriteResultinsert(List<? extends DBObject> documents)Insert documents into a collection.WriteResultinsert(List<? extends DBObject> documents, InsertOptions insertOptions)Insert documents into a collection.WriteResultinsert(List<? extends DBObject> documents, WriteConcern aWriteConcern)Insert documents into a collection.WriteResultinsert(List<? extends DBObject> documents, WriteConcern aWriteConcern, DBEncoder dbEncoder)Insert documents into a collection.booleanisCapped()Checks whether this collection is cappedMapReduceOutputmapReduce(MapReduceCommand command)Allows you to run map-reduce aggregation operations over a collection.MapReduceOutputmapReduce(String map, String reduce, String outputTarget, DBObject query)Allows you to run map-reduce aggregation operations over a collection.MapReduceOutputmapReduce(String map, String reduce, String outputTarget, MapReduceCommand.OutputType outputType, DBObject query)Allows you to run map-reduce aggregation operations over a collection and saves to a named collection.MapReduceOutputmapReduce(String map, String reduce, String outputTarget, MapReduceCommand.OutputType outputType, DBObject query, ReadPreference readPreference)Allows you to run map-reduce aggregation operations over a collection and saves to a named collection.List<Cursor>parallelScan(ParallelScanOptions options)Deprecated.the parallelCollectionScan command will be removed in MongoDB 4.2WriteResultremove(DBObject query)Remove documents from a collection.WriteResultremove(DBObject query, DBCollectionRemoveOptions options)Remove documents from a collection.WriteResultremove(DBObject query, WriteConcern writeConcern)Remove documents from a collection.WriteResultremove(DBObject query, WriteConcern writeConcern, DBEncoder encoder)Remove documents from a collection.DBCollectionrename(String newName)Change the name of an existing collection.DBCollectionrename(String newName, boolean dropTarget)Change the name of an existing collection.voidresetOptions()Deprecated.Replaced withDBCursor.resetOptions()WriteResultsave(DBObject document)Update an existing document or insert a document depending on the parameter.WriteResultsave(DBObject document, WriteConcern writeConcern)Update an existing document or insert a document depending on the parameter.voidsetDBDecoderFactory(DBDecoderFactory factory)Set a custom decoder factory for this collection.voidsetDBEncoderFactory(DBEncoderFactory factory)Set a custom encoder factory for this collection.voidsetHintFields(List<? extends DBObject> indexes)Deprecated.PreferDBCursor.hint(DBObject)voidsetInternalClass(String path, Class<? extends DBObject> aClass)Sets the internal class for the given path in the document hierarchyvoidsetObjectClass(Class<? extends DBObject> aClass)Sets a default class for objects in this collection; null resets the class to nothing.voidsetOptions(int options)Deprecated.Replaced withDBCursor.setOptions(int)voidsetReadConcern(ReadConcern readConcern)Sets the read concern for this collection.voidsetReadPreference(ReadPreference preference)Sets theReadPreferencefor this collection.voidsetWriteConcern(WriteConcern writeConcern)Set theWriteConcernfor this collection.voidslaveOk()Deprecated.Replaced withReadPreference.secondaryPreferred()StringtoString()WriteResultupdate(DBObject query, DBObject update)Modify an existing document.WriteResultupdate(DBObject query, DBObject update, boolean upsert, boolean multi)Modify an existing document or documents in collection.WriteResultupdate(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern aWriteConcern)Modify an existing document or documents in collection.WriteResultupdate(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern concern, DBEncoder encoder)Modify an existing document or documents in collection.WriteResultupdate(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern concern, Boolean bypassDocumentValidation, DBEncoder encoder)Modify an existing document or documents in collection.WriteResultupdate(DBObject query, DBObject update, DBCollectionUpdateOptions options)Modify an existing document or documents in collection.WriteResultupdateMulti(DBObject query, DBObject update)Modify documents in collection.
-
-
-
Field Detail
-
ID_FIELD_NAME
public static final String ID_FIELD_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
insert
public WriteResult insert(DBObject document, WriteConcern writeConcern)
Insert a document into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
document-DBObjectto be insertedwriteConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(DBObject... documents)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added. Collection wideWriteConcernwill be used.- Parameters:
documents-DBObject's to be inserted- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(WriteConcern writeConcern, DBObject... documents)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents-DBObject's to be insertedwriteConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(DBObject[] documents, WriteConcern writeConcern)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents-DBObject's to be insertedwriteConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(List<? extends DBObject> documents)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents- list ofDBObjectto be inserted- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(List<? extends DBObject> documents, WriteConcern aWriteConcern)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents- list ofDBObject's to be insertedaWriteConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(DBObject[] documents, WriteConcern aWriteConcern, DBEncoder encoder)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents-DBObject's to be insertedaWriteConcern-WriteConcernto be used during operationencoder-DBEncoderto be used- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(List<? extends DBObject> documents, WriteConcern aWriteConcern, @Nullable DBEncoder dbEncoder)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.- Parameters:
documents- a list ofDBObject's to be insertedaWriteConcern-WriteConcernto be used during operationdbEncoder-DBEncoderto be used- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
insert
public WriteResult insert(List<? extends DBObject> documents, InsertOptions insertOptions)
Insert documents into a collection. If the collection does not exists on the server, then it will be created. If the new document does not contain an '_id' field, it will be added.
If the value of the continueOnError property of the given
InsertOptionsis true, that value will override the value of the continueOnError property of the givenWriteConcern. Otherwise, the value of the continueOnError property of the givenWriteConcernwill take effect.- Parameters:
documents- a list ofDBObject's to be insertedinsertOptions- the options to use for the insert- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Insert Documents
-
save
public WriteResult save(DBObject document)
Update an existing document or insert a document depending on the parameter. If the document does not contain an '_id' field, then the method performs an insert with the specified fields in the document as well as an '_id' field with a unique objectId value. If the document contains an '_id' field, then the method performs an upsert querying the collection on the '_id' field:- If a document does not exist with the specified '_id' value, the method performs an insert with the specified fields in the document.
- If a document exists with the specified '_id' value, the method performs an update, replacing all field in the existing record with the fields from the document.
- Parameters:
document-DBObjectto save to the collection.- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert or update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Save
-
save
public WriteResult save(DBObject document, WriteConcern writeConcern)
Update an existing document or insert a document depending on the parameter. If the document does not contain an '_id' field, then the method performs an insert with the specified fields in the document as well as an '_id' field with a unique objectId value. If the document contains an '_id' field, then the method performs an upsert querying the collection on the '_id' field:- If a document does not exist with the specified '_id' value, the method performs an insert with the specified fields in the document.
- If a document exists with the specified '_id' value, the method performs an update, replacing all field in the existing record with the fields from the document.
- Parameters:
document-DBObjectto save to the collection.writeConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the insert or update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Save
-
update
public WriteResult update(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern aWriteConcern)
Modify an existing document or documents in collection. The query parameter employs the same query selectors, as used infind().- Parameters:
query- the selection criteria for the updateupdate- the modifications to applyupsert- when true, inserts a document if no document matches the update query criteriamulti- when true, updates all documents in the collection that match the update query criteria, otherwise only updates oneaWriteConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Modify Documents
-
update
public WriteResult update(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern concern, @Nullable DBEncoder encoder)
Modify an existing document or documents in collection. By default the method updates a single document. The query parameter employs the same query selectors, as used infind().- Parameters:
query- the selection criteria for the updateupdate- the modifications to applyupsert- when true, inserts a document if no document matches the update query criteriamulti- when true, updates all documents in the collection that match the update query criteria, otherwise only updates oneconcern-WriteConcernto be used during operationencoder-DBEncoderto be used- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Modify Documents
-
update
public WriteResult update(DBObject query, DBObject update, boolean upsert, boolean multi, WriteConcern concern, @Nullable Boolean bypassDocumentValidation, @Nullable DBEncoder encoder)
Modify an existing document or documents in collection. By default the method updates a single document. The query parameter employs the same query selectors, as used infind(DBObject).- Parameters:
query- the selection criteria for the updateupdate- the modifications to applyupsert- when true, inserts a document if no document matches the update query criteriamulti- when true, updates all documents in the collection that match the update query criteria, otherwise only updates oneconcern-WriteConcernto be used during operationbypassDocumentValidation- whether to bypass document validation.encoder- the DBEncoder to use- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.14
- MongoDB documentation
- Modify
-
update
public WriteResult update(DBObject query, DBObject update, boolean upsert, boolean multi)
Modify an existing document or documents in collection. The query parameter employs the same query selectors, as used infind().- Parameters:
query- the selection criteria for the updateupdate- the modifications to applyupsert- when true, inserts a document if no document matches the update query criteriamulti- when true, updates all documents in the collection that match the update query criteria, otherwise only updates one- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Modify Documents
-
update
public WriteResult update(DBObject query, DBObject update)
Modify an existing document. The query parameter employs the same query selectors, as used infind().- Parameters:
query- the selection criteria for the updateupdate- the modifications to apply- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Modify Documents
-
updateMulti
public WriteResult updateMulti(DBObject query, DBObject update)
Modify documents in collection. The query parameter employs the same query selectors, as used infind().- Parameters:
query- the selection criteria for the updateupdate- the modifications to apply- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Modify Documents
-
update
public WriteResult update(DBObject query, DBObject update, DBCollectionUpdateOptions options)
Modify an existing document or documents in collection.- Parameters:
query- the selection criteria for the updateupdate- the modifications to applyoptions- the options to apply to the update operation- Returns:
- the result of the operation
- Throws:
DuplicateKeyException- if the write failed to a duplicate unique keyWriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 3.4
- MongoDB documentation
- Modify
-
remove
public WriteResult remove(DBObject query)
Remove documents from a collection.- Parameters:
query- the deletion criteria using query operators. Omit the query parameter or pass an empty document to delete all documents in the collection.- Returns:
- the result of the operation
- Throws:
WriteConcernException- if the write failed due some other failure specific to the delete commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Remove Documents
-
remove
public WriteResult remove(DBObject query, WriteConcern writeConcern)
Remove documents from a collection.- Parameters:
query- the deletion criteria using query operators. Omit the query parameter or pass an empty document to delete all documents in the collection.writeConcern-WriteConcernto be used during operation- Returns:
- the result of the operation
- Throws:
WriteConcernException- if the write failed due some other failure specific to the delete commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Remove Documents
-
remove
public WriteResult remove(DBObject query, WriteConcern writeConcern, DBEncoder encoder)
Remove documents from a collection.- Parameters:
query- the deletion criteria using query operators. Omit the query parameter or pass an empty document to delete all documents in the collection.writeConcern-WriteConcernto be used during operationencoder-DBEncoderto be used- Returns:
- the result of the operation
- Throws:
WriteConcernException- if the write failed due some other failure specific to the delete commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Remove Documents
-
remove
public WriteResult remove(DBObject query, DBCollectionRemoveOptions options)
Remove documents from a collection.- Parameters:
query- the deletion criteria using query operators. Omit the query parameter or pass an empty document to delete all documents in the collection.options- the options to apply to the delete operation- Returns:
- the result of the operation
- Throws:
WriteConcernException- if the write failed due some other failure specific to the delete commandMongoException- if the operation failed for some other reason- Since:
- 3.4
- MongoDB documentation
- Remove Documents
-
find
@Deprecated public DBCursor find(DBObject query, DBObject projection, int numToSkip, int batchSize, int options)
Deprecated. useDBCursor.skip(int),DBCursor.batchSize(int)andDBCursor.setOptions(int)on theDBCursorreturned fromfind(DBObject, DBObject)Select documents in collection and get a cursor to the selected documents.- Parameters:
query- the selection criteria using query operators. Omit the query parameter or pass an empty document to return all documents in the collection.projection- specifies which fields MongoDB will return from the documents in the result set.numToSkip- number of documents to skipbatchSize- seeDBCursor.batchSize(int)for more informationoptions- query options to be used- Returns:
- A cursor to the documents that match the query criteria
- MongoDB documentation
- Querying
-
find
@Deprecated public DBCursor find(DBObject query, DBObject projection, int numToSkip, int batchSize)
Deprecated. useDBCursor.skip(int)andDBCursor.batchSize(int)on theDBCursorreturned fromfind(DBObject, DBObject)Select documents in collection and get a cursor to the selected documents.- Parameters:
query- the selection criteria using query operators. Omit the query parameter or pass an empty document to return all documents in the collection.projection- specifies which fields MongoDB will return from the documents in the result set.numToSkip- number of documents to skipbatchSize- seeDBCursor.batchSize(int)for more information- Returns:
- A cursor to the documents that match the query criteria
- MongoDB documentation
- Querying
-
find
public DBCursor find(DBObject query)
Select documents in collection and get a cursor to the selected documents.- Parameters:
query- the selection criteria using query operators. Omit the query parameter or pass an empty document to return all documents in the collection.- Returns:
- A cursor to the documents that match the query criteria
- MongoDB documentation
- Querying
-
find
public DBCursor find(DBObject query, DBObject projection)
Select documents in collection and get a cursor to the selected documents.- Parameters:
query- the selection criteria using query operators. Omit the query parameter or pass an empty document to return all documents in the collection.projection- specifies which fields MongoDB will return from the documents in the result set.- Returns:
- A cursor to the documents that match the query criteria
- MongoDB documentation
- Querying
-
find
public DBCursor find()
Select all documents in collection and get a cursor to the selected documents.- Returns:
- A cursor to the documents that match the query criteria
- MongoDB documentation
- Querying
-
find
public DBCursor find(@Nullable DBObject query, DBCollectionFindOptions options)
Select documents in collection and get a cursor to the selected documents.- Parameters:
query- the selection criteria using query operators. Omit the query parameter or pass an empty document to return all documents in the collection.options- the options for the find operation.- Returns:
- A cursor to the documents that match the query criteria
- Since:
- 3.4
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne()
Get a single document from collection.- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(DBObject query)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(DBObject query, DBObject projection)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.projection- specifies which fields MongoDB will return from the documents in the result set.- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(DBObject query, DBObject projection, DBObject sort)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.projection- specifies which fields MongoDB will return from the documents in the result set.sort- A document whose fields specify the attributes on which to sort the result set.- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(DBObject query, DBObject projection, ReadPreference readPreference)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.projection- specifies which fields MongoDB will return from the documents in the result set.readPreference-ReadPreferenceto be used for this operation- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(@Nullable DBObject query, @Nullable DBObject projection, @Nullable DBObject sort, ReadPreference readPreference)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.projection- specifies which projection MongoDB will return from the documents in the result set.sort- A document whose fields specify the attributes on which to sort the result set.readPreference-ReadPreferenceto be used for this operation- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(Object id)
Get a single document from collection by '_id'.- Parameters:
id- value of '_id' field of a document we are looking for- Returns:
- A document with '_id' provided as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(Object id, DBObject projection)
Get a single document from collection by '_id'.- Parameters:
id- value of '_id' field of a document we are looking forprojection- specifies which projection MongoDB will return from the documents in the result set.- Returns:
- A document that satisfies the query specified as the argument to this method.
- MongoDB documentation
- Querying
-
findOne
@Nullable public DBObject findOne(@Nullable DBObject query, DBCollectionFindOptions findOptions)
Get a single document from collection.- Parameters:
query- the selection criteria using query operators.findOptions- the options for the find operation.- Returns:
- A document that satisfies the query specified as the argument to this method.
- Since:
- 3.4
- MongoDB documentation
- Querying
-
count
public long count()
Same asgetCount()- Returns:
- the number of documents in collection
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
count
public long count(@Nullable DBObject query)
Same asgetCount(DBObject)- Parameters:
query- specifies the selection criteria- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
count
public long count(@Nullable DBObject query, ReadPreference readPreference)
Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriareadPreference-ReadPreferenceto be used for this operation- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
count
public long count(@Nullable DBObject query, DBCollectionCountOptions options)
Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaoptions- the options for the count operation.- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- Since:
- 3.4
- MongoDB documentation
- Count
-
getCount
public long getCount()
Get the count of documents in collection.- Returns:
- the number of documents in collection
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
public long getCount(ReadPreference readPreference)
Get the count of documents in collection.- Parameters:
readPreference-ReadPreferenceto be used for this operation- Returns:
- the number of documents in collection
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
public long getCount(@Nullable DBObject query)
Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteria- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
@Deprecated public long getCount(@Nullable DBObject query, DBObject projection)
Deprecated. Prefercount(DBObject, DBCollectionCountOptions)Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaprojection- this is ignored- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
@Deprecated public long getCount(@Nullable DBObject query, @Nullable DBObject projection, ReadPreference readPreference)
Deprecated. Prefercount(DBObject, DBCollectionCountOptions)Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaprojection- this is ignoredreadPreference-ReadPreferenceto be used for this operation- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
@Deprecated public long getCount(@Nullable DBObject query, @Nullable DBObject projection, long limit, long skip)
Deprecated. Prefercount(DBObject, DBCollectionCountOptions)Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaprojection- this is ignoredlimit- limit the count to this valueskip- number of documents to skip- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
@Deprecated public long getCount(@Nullable DBObject query, @Nullable DBObject projection, long limit, long skip, ReadPreference readPreference)
Deprecated. Prefercount(DBObject, DBCollectionCountOptions)Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaprojection- this is ignoredlimit- limit the count to this valueskip- number of documents to skipreadPreference-ReadPreferenceto be used for this operation- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Count
-
getCount
public long getCount(@Nullable DBObject query, DBCollectionCountOptions options)
Get the count of documents in collection that would match a criteria.- Parameters:
query- specifies the selection criteriaoptions- the options for the count operation.- Returns:
- the number of documents that matches selection criteria
- Throws:
MongoException- if the operation failed- Since:
- 3.4
- MongoDB documentation
- Count
-
rename
public DBCollection rename(String newName)
Change the name of an existing collection.- Parameters:
newName- specifies the new name of the collection- Returns:
- the collection with new name
- Throws:
MongoException- if newName is the name of an existing collection.- MongoDB documentation
- Rename Collection
-
rename
public DBCollection rename(String newName, boolean dropTarget)
Change the name of an existing collection.- Parameters:
newName- specifies the new name of the collectiondropTarget- Iftrue, mongod will drop the collection with the target name if it exists- Returns:
- the collection with new name
- Throws:
MongoException- if target is the name of an existing collection anddropTarget=false.- MongoDB documentation
- Rename Collection
-
group
@Deprecated public DBObject group(DBObject key, DBObject cond, DBObject initial, String reduce)
Deprecated. The group command was deprecated in MongoDB 3.4Group documents in a collection by the specified key and performs simple aggregation functions such as computing counts and sums. This is analogous to aSELECT ... GROUP BYstatement in SQL.- Parameters:
key- specifies one or more document fields to groupcond- specifies the selection criteria to determine which documents in the collection to processinitial- initializes the aggregation result documentreduce- specifies an $reduce function, that operates on the documents during the grouping operation- Returns:
- a document with the grouped records as well as the command meta-data
- MongoDB documentation
- Group Command
-
group
@Deprecated public DBObject group(DBObject key, DBObject cond, DBObject initial, String reduce, @Nullable String finalize)
Deprecated. The group command was deprecated in MongoDB 3.4Group documents in a collection by the specified key and performs simple aggregation functions such as computing counts and sums. This is analogous to aSELECT ... GROUP BYstatement in SQL.- Parameters:
key- specifies one or more document fields to groupcond- specifies the selection criteria to determine which documents in the collection to processinitial- initializes the aggregation result documentreduce- specifies an $reduce Javascript function, that operates on the documents during the grouping operationfinalize- specifies a Javascript function that runs each item in the result set before final value will be returned- Returns:
- a document with the grouped records as well as the command meta-data
- MongoDB documentation
- Group Command
-
group
@Deprecated public DBObject group(DBObject key, DBObject cond, DBObject initial, String reduce, @Nullable String finalize, ReadPreference readPreference)
Deprecated. The group command was deprecated in MongoDB 3.4Group documents in a collection by the specified key and performs simple aggregation functions such as computing counts and sums. This is analogous to aSELECT ... GROUP BYstatement in SQL.- Parameters:
key- specifies one or more document fields to groupcond- specifies the selection criteria to determine which documents in the collection to processinitial- initializes the aggregation result documentreduce- specifies an $reduce Javascript function, that operates on the documents during the grouping operationfinalize- specifies a Javascript function that runs each item in the result set before final value will be returnedreadPreference-ReadPreferenceto be used for this operation- Returns:
- a document with the grouped records as well as the command meta-data
- MongoDB documentation
- Group Command
-
group
@Deprecated public DBObject group(GroupCommand cmd)
Deprecated. The group command was deprecated in MongoDB 3.4Group documents in a collection by the specified key and performs simple aggregation functions such as computing counts and sums. This is analogous to aSELECT ... GROUP BYstatement in SQL.- Parameters:
cmd- the group command- Returns:
- a document with the grouped records as well as the command meta-data
- MongoDB documentation
- Group Command
-
group
@Deprecated public DBObject group(GroupCommand cmd, ReadPreference readPreference)
Deprecated. The group command was deprecated in MongoDB 3.4Group documents in a collection by the specified key and performs simple aggregation functions such as computing counts and sums. This is analogous to aSELECT ... GROUP BYstatement in SQL.- Parameters:
cmd- the group commandreadPreference-ReadPreferenceto be used for this operation- Returns:
- a document with the grouped records as well as the command meta-data
- MongoDB documentation
- Group Command
-
distinct
public List distinct(String fieldName)
Find the distinct values for a specified field across a collection and returns the results in an array.- Parameters:
fieldName- Specifies the field for which to return the distinct values.- Returns:
- a List of the distinct values
- MongoDB documentation
- Distinct Command
-
distinct
public List distinct(String fieldName, ReadPreference readPreference)
Find the distinct values for a specified field across a collection and returns the results in an array.- Parameters:
fieldName- Specifies the field for which to return the distinct valuesreadPreference-ReadPreferenceto be used for this operation- Returns:
- a List of the distinct values
- MongoDB documentation
- Distinct Command
-
distinct
public List distinct(String fieldName, DBObject query)
Find the distinct values for a specified field across a collection and returns the results in an array.- Parameters:
fieldName- Specifies the field for which to return the distinct valuesquery- specifies the selection query to determine the subset of documents from which to retrieve the distinct values- Returns:
- an array of the distinct values
- MongoDB documentation
- Distinct Command
-
distinct
public List distinct(String fieldName, DBObject query, ReadPreference readPreference)
Find the distinct values for a specified field across a collection and returns the results in an array.- Parameters:
fieldName- Specifies the field for which to return the distinct valuesquery- specifies the selection query to determine the subset of documents from which to retrieve the distinct valuesreadPreference-ReadPreferenceto be used for this operation- Returns:
- A
Listof the distinct values - MongoDB documentation
- Distinct Command
-
distinct
public List distinct(String fieldName, DBCollectionDistinctOptions options)
Find the distinct values for a specified field across a collection and returns the results in an array.- Parameters:
fieldName- Specifies the field for which to return the distinct valuesoptions- the options to apply for this operation- Returns:
- A
Listof the distinct values - Since:
- 3.4
- MongoDB documentation
- Distinct Command
-
mapReduce
public MapReduceOutput mapReduce(String map, String reduce, String outputTarget, DBObject query)
Allows you to run map-reduce aggregation operations over a collection.- Parameters:
map- a JavaScript function that associates or "maps" a value with a key and emits the key and value pair.reduce- a JavaScript function that "reduces" to a single object all the values associated with a particular key.outputTarget- specifies the location of the result of the map-reduce operation.query- specifies the selection criteria using query operators for determining the documents input to the map function.- Returns:
- a MapReduceOutput which contains the results of this map reduce operation
- MongoDB documentation
- Map-Reduce
-
mapReduce
public MapReduceOutput mapReduce(String map, String reduce, String outputTarget, MapReduceCommand.OutputType outputType, DBObject query)
Allows you to run map-reduce aggregation operations over a collection and saves to a named collection.- Parameters:
map- a JavaScript function that associates or "maps" a value with a key and emits the key and value pair.reduce- a JavaScript function that "reduces" to a single object all the values associated with a particular key.outputTarget- specifies the location of the result of the map-reduce operation.outputType- specifies the type of job outputquery- specifies the selection criteria using query operators for determining the documents input to the map function.- Returns:
- a MapReduceOutput which contains the results of this map reduce operation
- MongoDB documentation
- Map-Reduce
-
mapReduce
public MapReduceOutput mapReduce(String map, String reduce, String outputTarget, MapReduceCommand.OutputType outputType, DBObject query, ReadPreference readPreference)
Allows you to run map-reduce aggregation operations over a collection and saves to a named collection.- Parameters:
map- a JavaScript function that associates or "maps" a value with a key and emits the key and value pair.reduce- a JavaScript function that "reduces" to a single object all the values associated with a particular key.outputTarget- specifies the location of the result of the map-reduce operation.outputType- specifies the type of job outputquery- specifies the selection criteria using query operators for determining the documents input to the map function.readPreference- the read preference specifying where to run the query. Only applied for Inline output type- Returns:
- a MapReduceOutput which contains the results of this map reduce operation
- MongoDB documentation
- Map-Reduce
-
mapReduce
public MapReduceOutput mapReduce(MapReduceCommand command)
Allows you to run map-reduce aggregation operations over a collection.- Parameters:
command- specifies the details of the Map Reduce operation to perform- Returns:
- a MapReduceOutput containing the results of the map reduce operation
- MongoDB documentation
- Map-Reduce
-
aggregate
@Deprecated public AggregationOutput aggregate(DBObject firstOp, DBObject... additionalOps)
Deprecated. Useaggregate(List, AggregationOptions)insteadMethod implements aggregation framework.- Parameters:
firstOp- requisite first operation to be performed in the aggregation pipelineadditionalOps- additional operations to be performed in the aggregation pipeline- Returns:
- the aggregation operation's result set
- MongoDB documentation
- Aggregation
- Since server release
- 2.2
-
aggregate
@Deprecated public AggregationOutput aggregate(List<? extends DBObject> pipeline)
Deprecated. Useaggregate(List, AggregationOptions)insteadMethod implements aggregation framework.- Parameters:
pipeline- operations to be performed in the aggregation pipeline- Returns:
- the aggregation's result set
- MongoDB documentation
- Aggregation
- Since server release
- 2.2
-
aggregate
@Deprecated public AggregationOutput aggregate(List<? extends DBObject> pipeline, ReadPreference readPreference)
Deprecated. Useaggregate(List, AggregationOptions, ReadPreference))} insteadMethod implements aggregation framework.- Parameters:
pipeline- operations to be performed in the aggregation pipelinereadPreference- the read preference specifying where to run the query- Returns:
- the aggregation's result set
- MongoDB documentation
- Aggregation
- Since server release
- 2.2
-
aggregate
public Cursor aggregate(List<? extends DBObject> pipeline, AggregationOptions options)
Method implements aggregation framework.- Parameters:
pipeline- operations to be performed in the aggregation pipelineoptions- options to apply to the aggregation- Returns:
- the aggregation operation's result set
- MongoDB documentation
- Aggregation
- Since server release
- 2.2
-
aggregate
public Cursor aggregate(List<? extends DBObject> pipeline, AggregationOptions options, ReadPreference readPreference)
Method implements aggregation framework.- Parameters:
pipeline- operations to be performed in the aggregation pipelineoptions- options to apply to the aggregationreadPreference-ReadPreferenceto be used for this operation- Returns:
- the aggregation operation's result set
- MongoDB documentation
- Aggregation
- Since server release
- 2.2
-
explainAggregate
public CommandResult explainAggregate(List<? extends DBObject> pipeline, AggregationOptions options)
Return the explain plan for the aggregation pipeline.- Parameters:
pipeline- the aggregation pipeline to explainoptions- the options to apply to the aggregation- Returns:
- the command result. The explain output may change from release to release, so best to simply log this.
- MongoDB documentation
- Aggregation
- Explain query
- Since server release
- 2.6
-
parallelScan
@Deprecated public List<Cursor> parallelScan(ParallelScanOptions options)
Deprecated. the parallelCollectionScan command will be removed in MongoDB 4.2Return a list of cursors over the collection that can be used to scan it in parallel.
Note: As of MongoDB 2.6, this method will work against a mongod, but not a mongos.
- Parameters:
options- the parallel scan options- Returns:
- a list of cursors, whose size may be less than the number requested
- Since:
- 2.12
- MongoDB documentation
- Parallel Collection Scan
- Since server release
- 2.6
-
getName
public String getName()
Get the name of a collection.- Returns:
- the name of a collection
-
getFullName
public String getFullName()
Get the full name of a collection, with the database name as a prefix.- Returns:
- the name of a collection
- MongoDB documentation
- Namespace
-
getCollection
public DBCollection getCollection(String name)
Find a collection that is prefixed with this collection's name. A typical use of this might be
Which is equivalent toDBCollection users = mongo.getCollection( "wiki" ).getCollection( "users" );DBCollection users = mongo.getCollection( "wiki.users" );- Parameters:
name- the name of the collection to find- Returns:
- the matching collection
-
createIndex
public void createIndex(String name)
Forces creation of an ascending index on a field with the default options.- Parameters:
name- name of field to index on- Throws:
MongoException- if the operation failed- MongoDB documentation
- Index Creation Tutorials
-
createIndex
public void createIndex(DBObject keys, String name)
Forces creation of an index on a set of fields, if one does not already exist.- Parameters:
keys- a document that contains pairs with the name of the field or fields to index and order of the indexname- an identifier for the index. If null or empty, the default name will be used.- Throws:
MongoException- if the operation failed- MongoDB documentation
- Index Creation Tutorials
-
createIndex
public void createIndex(DBObject keys, @Nullable String name, boolean unique)
Forces creation of an index on a set of fields, if one does not already exist.- Parameters:
keys- a document that contains pairs with the name of the field or fields to index and order of the indexname- an identifier for the index. If null or empty, the default name will be used.unique- if the index should be unique- Throws:
MongoException- if the operation failed- MongoDB documentation
- Index Creation Tutorials
-
createIndex
public void createIndex(DBObject keys)
Creates an index on the field specified, if that index does not already exist.- Parameters:
keys- a document that contains pairs with the name of the field or fields to index and order of the index- MongoDB documentation
- Index Creation Tutorials
-
createIndex
public void createIndex(DBObject keys, DBObject options)
Creates an index on the field specified, if that index does not already exist.Prior to MongoDB 3.0 the dropDups option could be used with unique indexes allowing documents with duplicate values to be dropped when building the index. Later versions of MongoDB will silently ignore this setting.
- Parameters:
keys- a document that contains pairs with the name of the field or fields to index and order of the indexoptions- a document that controls the creation of the index.- MongoDB documentation
- Index Creation Tutorials
-
getHintFields
@Deprecated @Nullable public List<DBObject> getHintFields()
Deprecated. PreferDBCursor.hint(DBObject)Get hint fields for this collection (used to optimize queries).- Returns:
- a list of
DBObjectto be used as hints. - MongoDB documentation
- $hint
-
setHintFields
@Deprecated public void setHintFields(List<? extends DBObject> indexes)
Deprecated. PreferDBCursor.hint(DBObject)Override MongoDB's default index selection and query optimization process.- Parameters:
indexes- list of indexes to "hint" or force MongoDB to use when performing the query.- MongoDB documentation
- $hint
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject sort, DBObject update)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationsort- determines which document the operation will modify if the query selects multiple documentsupdate- the modifications to apply- Returns:
- pre-modification document
- Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, DBObject update)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationupdate- the modifications to apply- Returns:
- the document as it was before the modifications
- Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Find and Modify
-
findAndRemove
@Nullable public DBObject findAndRemove(@Nullable DBObject query)
Atomically remove and return a single document. The returned document is the original document before removal.- Parameters:
query- specifies the selection criteria for the modification- Returns:
- the document as it was before the modifications
- Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject fields, @Nullable DBObject sort, boolean remove, @Nullable DBObject update, boolean returnNew, boolean upsert)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- whentrue, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- the modifications to applyupsert- when true, operation creates a new document if the query returns no documents- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject fields, @Nullable DBObject sort, boolean remove, DBObject update, boolean returnNew, boolean upsert, WriteConcern writeConcern)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- when true, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- the modifications to applyupsert- when true, operation creates a new document if the query returns no documentswriteConcern- the write concern to apply to this operation- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.14
- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject fields, @Nullable DBObject sort, boolean remove, @Nullable DBObject update, boolean returnNew, boolean upsert, long maxTime, TimeUnit maxTimeUnit)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- when true, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- the modifications to applyupsert- when true, operation creates a new document if the query returns no documentsmaxTime- the maximum time that the server will allow this operation to execute before killing it. A non-zero value requires a server version >= 2.6maxTimeUnit- the unit that maxTime is specified in- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.12.0
- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject fields, @Nullable DBObject sort, boolean remove, @Nullable DBObject update, boolean returnNew, boolean upsert, long maxTime, TimeUnit maxTimeUnit, WriteConcern writeConcern)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- whentrue, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- performs an update of the selected documentupsert- when true, operation creates a new document if the query returns no documentsmaxTime- the maximum time that the server will allow this operation to execute before killing it. A non-zero value requires a server version >= 2.6maxTimeUnit- the unit that maxTime is specified inwriteConcern- the write concern to apply to this operation- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.14.0
- MongoDB documentation
- Find and Modify
-
findAndModify
@Nullable public DBObject findAndModify(DBObject query, DBObject fields, DBObject sort, boolean remove, @Nullable DBObject update, boolean returnNew, boolean upsert, boolean bypassDocumentValidation, long maxTime, TimeUnit maxTimeUnit)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- whentrue, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- performs an update of the selected documentupsert- when true, operation creates a new document if the query returns no documentsbypassDocumentValidation- whether to bypass document validation.maxTime- the maximum time that the server will allow this operation to execute before killing it. A non-zero value requires a server version >= 2.6maxTimeUnit- the unit that maxTime is specified in- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.14.0
- MongoDB documentation
- Find and Modify
-
findAndModify
public DBObject findAndModify(@Nullable DBObject query, @Nullable DBObject fields, @Nullable DBObject sort, boolean remove, @Nullable DBObject update, boolean returnNew, boolean upsert, boolean bypassDocumentValidation, long maxTime, TimeUnit maxTimeUnit, WriteConcern writeConcern)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationfields- a subset of fields to returnsort- determines which document the operation will modify if the query selects multiple documentsremove- whentrue, removes the selected documentreturnNew- when true, returns the modified document rather than the originalupdate- performs an update of the selected documentupsert- when true, operation creates a new document if the query returns no documentsbypassDocumentValidation- whether to bypass document validation.maxTime- the maximum time that the server will allow this operation to execute before killing it. A non-zero value requires a server version >= 2.6maxTimeUnit- the unit that maxTime is specified inwriteConcern- the write concern to apply to this operation- Returns:
- the document as it was before the modifications, unless
returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 2.14.0
- MongoDB documentation
- Find and Modify
-
findAndModify
public DBObject findAndModify(DBObject query, DBCollectionFindAndModifyOptions options)
Atomically modify and return a single document. By default, the returned document does not include the modifications made on the update.- Parameters:
query- specifies the selection criteria for the modificationoptions- the options regarding the find and modify operation- Returns:
- the document as it was before the modifications, unless
oprtions.returnNewis true, in which case it returns the document after the changes were made - Throws:
WriteConcernException- if the write failed due some other failure specific to the update commandMongoException- if the operation failed for some other reason- Since:
- 3.4
- MongoDB documentation
- Find and Modify
-
getDB
public DB getDB()
Returns the database this collection is a member of.- Returns:
- this collection's database
- MongoDB documentation
- Database
-
getWriteConcern
public WriteConcern getWriteConcern()
Get theWriteConcernfor this collection.- Returns:
- the default write concern for this collection
- MongoDB documentation
- Write Concern
-
setWriteConcern
public void setWriteConcern(WriteConcern writeConcern)
Set theWriteConcernfor this collection. Will be used for writes to this collection. Overrides any setting of write concern at the DB level.- Parameters:
writeConcern- WriteConcern to use- MongoDB documentation
- Write Concern
-
getReadPreference
public ReadPreference getReadPreference()
Gets theReadPreference.- Returns:
- the default read preference for this collection
- MongoDB documentation
- Read Preference
-
setReadPreference
public void setReadPreference(ReadPreference preference)
Sets theReadPreferencefor this collection. Will be used as default for reads from this collection; overrides DB and Connection level settings. See the documentation forReadPreferencefor more information.- Parameters:
preference- ReadPreference to use- MongoDB documentation
- Read Preference
-
setReadConcern
public void setReadConcern(ReadConcern readConcern)
Sets the read concern for this collection.- Parameters:
readConcern- the read concern to use for this collection- Since:
- 3.3
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
getReadConcern
public ReadConcern getReadConcern()
Get the read concern for this collection.- Returns:
- the
ReadConcern - Since:
- 3.3
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
slaveOk
@Deprecated public void slaveOk()
Deprecated. Replaced withReadPreference.secondaryPreferred()Makes this query ok to run on a slave node
-
addOption
@Deprecated public void addOption(int option)
Deprecated. Replaced withDBCursor.addOption(int)Adds the given flag to the default query options.- Parameters:
option- value to be added- MongoDB documentation
- Query Flags
-
resetOptions
@Deprecated public void resetOptions()
Deprecated. Replaced withDBCursor.resetOptions()Resets the default query options- MongoDB documentation
- Query Flags
-
getOptions
@Deprecated public int getOptions()
Deprecated. Replaced withDBCursor.getOptions()Gets the default query options- Returns:
- bit vector of query options
- MongoDB documentation
- Query Flags
-
setOptions
@Deprecated public void setOptions(int options)
Deprecated. Replaced withDBCursor.setOptions(int)Sets the default query options, overwriting previous value.- Parameters:
options- bit vector of query options- MongoDB documentation
- Query Flags
-
drop
public void drop()
Drops (deletes) this collection from the database. Use with care.- Throws:
MongoException- if the operation failed- MongoDB documentation
- Drop Command
-
getDBDecoderFactory
public DBDecoderFactory getDBDecoderFactory()
Get the decoder factory for this collection. A null return value means that the default from MongoOptions is being used.- Returns:
- the factory
-
setDBDecoderFactory
public void setDBDecoderFactory(@Nullable DBDecoderFactory factory)
Set a custom decoder factory for this collection. Set to null to use the default from MongoOptions.- Parameters:
factory- the factory to set.
-
getDBEncoderFactory
public DBEncoderFactory getDBEncoderFactory()
Get the encoder factory for this collection. A null return value means that the default from MongoOptions is being used.- Returns:
- the factory
-
setDBEncoderFactory
public void setDBEncoderFactory(@Nullable DBEncoderFactory factory)
Set a custom encoder factory for this collection. Set to null to use the default from MongoOptions.- Parameters:
factory- the factory to set.
-
getIndexInfo
public List<DBObject> getIndexInfo()
Return a list of the indexes for this collection. Each object in the list is the "info document" from MongoDB- Returns:
- list of index documents
- Throws:
MongoException- if the operation failed- MongoDB documentation
- Indexes
-
dropIndex
public void dropIndex(DBObject index)
Drops an index from this collection. The DBObject index parameter must match the specification of the index to drop, i.e. correct key name and type must be specified.- Parameters:
index- the specification of the index to drop- Throws:
MongoException- if the index does not exist- MongoDB documentation
- Indexes
-
dropIndex
public void dropIndex(String indexName)
Drops the index with the given name from this collection.- Parameters:
indexName- name of index to drop- Throws:
MongoException- if the index does not exist- MongoDB documentation
- Indexes
-
dropIndexes
public void dropIndexes()
Drop all indexes on this collection. The default index on the _id field will not be deleted.- MongoDB documentation
- Indexes
-
dropIndexes
public void dropIndexes(String indexName)
Drops the index with the given name from this collection. This method is exactly the same asdropIndex(indexName).- Parameters:
indexName- name of index to drop- Throws:
MongoException- if the index does not exist- MongoDB documentation
- Indexes
-
getStats
public CommandResult getStats()
The collStats command returns a variety of storage statistics for a given collection- Returns:
- a CommandResult containing the statistics about this collection
- MongoDB documentation
- collStats Command
-
isCapped
public boolean isCapped()
Checks whether this collection is capped- Returns:
- true if this is a capped collection
- MongoDB documentation
- Capped Collections
-
getObjectClass
public Class getObjectClass()
Gets the default class for objects in the collection- Returns:
- the class
-
setObjectClass
public void setObjectClass(Class<? extends DBObject> aClass)
Sets a default class for objects in this collection; null resets the class to nothing.- Parameters:
aClass- the class
-
setInternalClass
public void setInternalClass(String path, Class<? extends DBObject> aClass)
Sets the internal class for the given path in the document hierarchy- Parameters:
path- the path to map the given Class toaClass- the Class to map the given path to
-
getInternalClass
protected Class<? extends DBObject> getInternalClass(String path)
Gets the internal class for the given path in the document hierarchy- Parameters:
path- the path to map the given Class to- Returns:
- the class for a given path in the hierarchy
-
initializeOrderedBulkOperation
public BulkWriteOperation initializeOrderedBulkOperation()
Creates a builder for an ordered bulk write operation, consisting of an ordered collection of write requests, which can be any combination of inserts, updates, replaces, or removes. Write requests included in the bulk operations will be executed in order, and will halt on the first failure.
Note: While this bulk write operation will execute on MongoDB 2.4 servers and below, the writes will be performed one at a time, as that is the only way to preserve the semantics of the value returned from execution or the exception thrown.
Note: While a bulk write operation with a mix of inserts, updates, replaces, and removes is supported, the implementation will batch up consecutive requests of the same type and send them to the server one at a time. For example, if a bulk write operation consists of 10 inserts followed by 5 updates, followed by 10 more inserts, it will result in three round trips to the server.
- Returns:
- the builder
- Since:
- 2.12
- MongoDB documentation
- initializeOrderedBulkOp()
-
initializeUnorderedBulkOperation
public BulkWriteOperation initializeUnorderedBulkOperation()
Creates a builder for an unordered bulk operation, consisting of an unordered collection of write requests, which can be any combination of inserts, updates, replaces, or removes. Write requests included in the bulk operation will be executed in an undefined order, and all requests will be executed even if some fail.
Note: While this bulk write operation will execute on MongoDB 2.4 servers and below, the writes will be performed one at a time, as that is the only way to preserve the semantics of the value returned from execution or the exception thrown.
- Returns:
- the builder
- Since:
- 2.12
- MongoDB documentation
- initializeUnorderedBulkOp()
-
-