Package com.mongodb.client
Interface MongoDatabase
-
@ThreadSafe public interface MongoDatabaseThe MongoDatabase interface.Note: Additions to this interface will not be considered to break binary compatibility.
- Since:
- 3.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description AggregateIterable<org.bson.Document>aggregate(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline)Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.<TResult> AggregateIterable<TResult>aggregate(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.AggregateIterable<org.bson.Document>aggregate(List<? extends org.bson.conversions.Bson> pipeline)Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.<TResult> AggregateIterable<TResult>aggregate(List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.voidcreateCollection(ClientSession clientSession, String collectionName)Create a new collection with the given name.voidcreateCollection(ClientSession clientSession, String collectionName, com.mongodb.client.model.CreateCollectionOptions createCollectionOptions)Create a new collection with the selected optionsvoidcreateCollection(String collectionName)Create a new collection with the given name.voidcreateCollection(String collectionName, com.mongodb.client.model.CreateCollectionOptions createCollectionOptions)Create a new collection with the selected optionsvoidcreateView(ClientSession clientSession, String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline)Creates a view with the given name, backing collection/view name, and aggregation pipeline that defines the view.voidcreateView(ClientSession clientSession, String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline, com.mongodb.client.model.CreateViewOptions createViewOptions)Creates a view with the given name, backing collection/view name, aggregation pipeline, and options that defines the view.voidcreateView(String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline)Creates a view with the given name, backing collection/view name, and aggregation pipeline that defines the view.voidcreateView(String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline, com.mongodb.client.model.CreateViewOptions createViewOptions)Creates a view with the given name, backing collection/view name, aggregation pipeline, and options that defines the view.voiddrop()Drops this database.voiddrop(ClientSession clientSession)Drops this database.org.bson.codecs.configuration.CodecRegistrygetCodecRegistry()Get the codec registry for the MongoDatabase.MongoCollection<org.bson.Document>getCollection(String collectionName)Gets a collection.<TDocument>
MongoCollection<TDocument>getCollection(String collectionName, Class<TDocument> documentClass)Gets a collection, with a specific default document class.StringgetName()Gets the name of the database.com.mongodb.ReadConcerngetReadConcern()Get the read concern for the MongoDatabase.com.mongodb.ReadPreferencegetReadPreference()Get the read preference for the MongoDatabase.com.mongodb.WriteConcerngetWriteConcern()Get the write concern for the MongoDatabase.MongoIterable<String>listCollectionNames()Gets the names of all the collections in this database.MongoIterable<String>listCollectionNames(ClientSession clientSession)Gets the names of all the collections in this database.ListCollectionsIterable<org.bson.Document>listCollections()Finds all the collections in this database.ListCollectionsIterable<org.bson.Document>listCollections(ClientSession clientSession)Finds all the collections in this database.<TResult> ListCollectionsIterable<TResult>listCollections(ClientSession clientSession, Class<TResult> resultClass)Finds all the collections in this database.<TResult> ListCollectionsIterable<TResult>listCollections(Class<TResult> resultClass)Finds all the collections in this database.org.bson.DocumentrunCommand(ClientSession clientSession, org.bson.conversions.Bson command)Executes the given command in the context of the current database with a read preference ofReadPreference.primary().org.bson.DocumentrunCommand(ClientSession clientSession, org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference)Executes the given command in the context of the current database with the given read preference.<TResult> TResultrunCommand(ClientSession clientSession, org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference, Class<TResult> resultClass)Executes the given command in the context of the current database with the given read preference.<TResult> TResultrunCommand(ClientSession clientSession, org.bson.conversions.Bson command, Class<TResult> resultClass)Executes the given command in the context of the current database with a read preference ofReadPreference.primary().org.bson.DocumentrunCommand(org.bson.conversions.Bson command)Executes the given command in the context of the current database with a read preference ofReadPreference.primary().org.bson.DocumentrunCommand(org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference)Executes the given command in the context of the current database with the given read preference.<TResult> TResultrunCommand(org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference, Class<TResult> resultClass)Executes the given command in the context of the current database with the given read preference.<TResult> TResultrunCommand(org.bson.conversions.Bson command, Class<TResult> resultClass)Executes the given command in the context of the current database with a read preference ofReadPreference.primary().ChangeStreamIterable<org.bson.Document>watch()Creates a change stream for this database.ChangeStreamIterable<org.bson.Document>watch(ClientSession clientSession)Creates a change stream for this database.<TResult> ChangeStreamIterable<TResult>watch(ClientSession clientSession, Class<TResult> resultClass)Creates a change stream for this database.ChangeStreamIterable<org.bson.Document>watch(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline)Creates a change stream for this database.<TResult> ChangeStreamIterable<TResult>watch(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)Creates a change stream for this database.<TResult> ChangeStreamIterable<TResult>watch(Class<TResult> resultClass)Creates a change stream for this database.ChangeStreamIterable<org.bson.Document>watch(List<? extends org.bson.conversions.Bson> pipeline)Creates a change stream for this database.<TResult> ChangeStreamIterable<TResult>watch(List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)Creates a change stream for this database.MongoDatabasewithCodecRegistry(org.bson.codecs.configuration.CodecRegistry codecRegistry)Create a new MongoDatabase instance with a different codec registry.MongoDatabasewithReadConcern(com.mongodb.ReadConcern readConcern)Create a new MongoDatabase instance with a different read concern.MongoDatabasewithReadPreference(com.mongodb.ReadPreference readPreference)Create a new MongoDatabase instance with a different read preference.MongoDatabasewithWriteConcern(com.mongodb.WriteConcern writeConcern)Create a new MongoDatabase instance with a different write concern.
-
-
-
Method Detail
-
getName
String getName()
Gets the name of the database.- Returns:
- the database name
-
getCodecRegistry
org.bson.codecs.configuration.CodecRegistry getCodecRegistry()
Get the codec registry for the MongoDatabase.- Returns:
- the
CodecRegistry
-
getReadPreference
com.mongodb.ReadPreference getReadPreference()
Get the read preference for the MongoDatabase.- Returns:
- the
ReadPreference
-
getWriteConcern
com.mongodb.WriteConcern getWriteConcern()
Get the write concern for the MongoDatabase.- Returns:
- the
WriteConcern
-
getReadConcern
com.mongodb.ReadConcern getReadConcern()
Get the read concern for the MongoDatabase.- Returns:
- the
ReadConcern - Since:
- 3.2
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
withCodecRegistry
MongoDatabase withCodecRegistry(org.bson.codecs.configuration.CodecRegistry codecRegistry)
Create a new MongoDatabase instance with a different codec registry.- Parameters:
codecRegistry- the newCodecRegistryfor the database- Returns:
- a new MongoDatabase instance with the different codec registry
-
withReadPreference
MongoDatabase withReadPreference(com.mongodb.ReadPreference readPreference)
Create a new MongoDatabase instance with a different read preference.- Parameters:
readPreference- the newReadPreferencefor the database- Returns:
- a new MongoDatabase instance with the different readPreference
-
withWriteConcern
MongoDatabase withWriteConcern(com.mongodb.WriteConcern writeConcern)
Create a new MongoDatabase instance with a different write concern.- Parameters:
writeConcern- the newWriteConcernfor the database- Returns:
- a new MongoDatabase instance with the different writeConcern
-
withReadConcern
MongoDatabase withReadConcern(com.mongodb.ReadConcern readConcern)
Create a new MongoDatabase instance with a different read concern.- Parameters:
readConcern- the newReadConcernfor the database- Returns:
- a new MongoDatabase instance with the different ReadConcern
- Since:
- 3.2
- MongoDB documentation
- Read Concern
- Since server release
- 3.2
-
getCollection
MongoCollection<org.bson.Document> getCollection(String collectionName)
Gets a collection.- Parameters:
collectionName- the name of the collection to return- Returns:
- the collection
- Throws:
IllegalArgumentException- if collectionName is invalid- See Also:
MongoNamespace.checkCollectionNameValidity(String)
-
getCollection
<TDocument> MongoCollection<TDocument> getCollection(String collectionName, Class<TDocument> documentClass)
Gets a collection, with a specific default document class.- Type Parameters:
TDocument- the type of the class to use instead ofDocument.- Parameters:
collectionName- the name of the collection to returndocumentClass- the default class to cast any documents returned from the database into.- Returns:
- the collection
-
runCommand
org.bson.Document runCommand(org.bson.conversions.Bson command)
Executes the given command in the context of the current database with a read preference ofReadPreference.primary().- Parameters:
command- the command to be run- Returns:
- the command result
-
runCommand
org.bson.Document runCommand(org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference)Executes the given command in the context of the current database with the given read preference.- Parameters:
command- the command to be runreadPreference- theReadPreferenceto be used when executing the command- Returns:
- the command result
-
runCommand
<TResult> TResult runCommand(org.bson.conversions.Bson command, Class<TResult> resultClass)Executes the given command in the context of the current database with a read preference ofReadPreference.primary().- Type Parameters:
TResult- the type of the class to use instead ofDocument.- Parameters:
command- the command to be runresultClass- the class to decode each document into- Returns:
- the command result
-
runCommand
<TResult> TResult runCommand(org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference, Class<TResult> resultClass)Executes the given command in the context of the current database with the given read preference.- Type Parameters:
TResult- the type of the class to use instead ofDocument.- Parameters:
command- the command to be runreadPreference- theReadPreferenceto be used when executing the commandresultClass- the class to decode each document into- Returns:
- the command result
-
runCommand
org.bson.Document runCommand(ClientSession clientSession, org.bson.conversions.Bson command)
Executes the given command in the context of the current database with a read preference ofReadPreference.primary().- Parameters:
clientSession- the client session with which to associate this operationcommand- the command to be run- Returns:
- the command result
- Since:
- 3.6
- Since server release
- 3.6
-
runCommand
org.bson.Document runCommand(ClientSession clientSession, org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference)
Executes the given command in the context of the current database with the given read preference.- Parameters:
clientSession- the client session with which to associate this operationcommand- the command to be runreadPreference- theReadPreferenceto be used when executing the command- Returns:
- the command result
- Since:
- 3.6
- Since server release
- 3.6
-
runCommand
<TResult> TResult runCommand(ClientSession clientSession, org.bson.conversions.Bson command, Class<TResult> resultClass)
Executes the given command in the context of the current database with a read preference ofReadPreference.primary().- Type Parameters:
TResult- the type of the class to use instead ofDocument.- Parameters:
clientSession- the client session with which to associate this operationcommand- the command to be runresultClass- the class to decode each document into- Returns:
- the command result
- Since:
- 3.6
- Since server release
- 3.6
-
runCommand
<TResult> TResult runCommand(ClientSession clientSession, org.bson.conversions.Bson command, com.mongodb.ReadPreference readPreference, Class<TResult> resultClass)
Executes the given command in the context of the current database with the given read preference.- Type Parameters:
TResult- the type of the class to use instead ofDocument.- Parameters:
clientSession- the client session with which to associate this operationcommand- the command to be runreadPreference- theReadPreferenceto be used when executing the commandresultClass- the class to decode each document into- Returns:
- the command result
- Since:
- 3.6
- Since server release
- 3.6
-
drop
void drop()
Drops this database.- MongoDB documentation
- Drop database
-
drop
void drop(ClientSession clientSession)
Drops this database.- Parameters:
clientSession- the client session with which to associate this operation- Since:
- 3.6
- MongoDB documentation
- Drop database
- Since server release
- 3.6
-
listCollectionNames
MongoIterable<String> listCollectionNames()
Gets the names of all the collections in this database.- Returns:
- an iterable containing all the names of all the collections in this database
-
listCollections
ListCollectionsIterable<org.bson.Document> listCollections()
Finds all the collections in this database.- Returns:
- the list collections iterable interface
- MongoDB documentation
- listCollections
-
listCollections
<TResult> ListCollectionsIterable<TResult> listCollections(Class<TResult> resultClass)
Finds all the collections in this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
resultClass- the class to decode each document into- Returns:
- the list collections iterable interface
- MongoDB documentation
- listCollections
-
listCollectionNames
MongoIterable<String> listCollectionNames(ClientSession clientSession)
Gets the names of all the collections in this database.- Parameters:
clientSession- the client session with which to associate this operation- Returns:
- an iterable containing all the names of all the collections in this database
- Since:
- 3.6
- Since server release
- 3.6
-
listCollections
ListCollectionsIterable<org.bson.Document> listCollections(ClientSession clientSession)
Finds all the collections in this database.- Parameters:
clientSession- the client session with which to associate this operation- Returns:
- the list collections iterable interface
- Since:
- 3.6
- MongoDB documentation
- listCollections
- Since server release
- 3.6
-
listCollections
<TResult> ListCollectionsIterable<TResult> listCollections(ClientSession clientSession, Class<TResult> resultClass)
Finds all the collections in this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
clientSession- the client session with which to associate this operationresultClass- the class to decode each document into- Returns:
- the list collections iterable interface
- Since:
- 3.6
- MongoDB documentation
- listCollections
- Since server release
- 3.6
-
createCollection
void createCollection(String collectionName)
Create a new collection with the given name.- Parameters:
collectionName- the name for the new collection to create- MongoDB documentation
- Create Command
-
createCollection
void createCollection(String collectionName, com.mongodb.client.model.CreateCollectionOptions createCollectionOptions)
Create a new collection with the selected options- Parameters:
collectionName- the name for the new collection to createcreateCollectionOptions- various options for creating the collection- MongoDB documentation
- Create Command
-
createCollection
void createCollection(ClientSession clientSession, String collectionName)
Create a new collection with the given name.- Parameters:
clientSession- the client session with which to associate this operationcollectionName- the name for the new collection to create- Since:
- 3.6
- MongoDB documentation
- Create Command
- Since server release
- 3.6
-
createCollection
void createCollection(ClientSession clientSession, String collectionName, com.mongodb.client.model.CreateCollectionOptions createCollectionOptions)
Create a new collection with the selected options- Parameters:
clientSession- the client session with which to associate this operationcollectionName- the name for the new collection to createcreateCollectionOptions- various options for creating the collection- Since:
- 3.6
- MongoDB documentation
- Create Command
- Since server release
- 3.6
-
createView
void createView(String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline)
Creates a view with the given name, backing collection/view name, and aggregation pipeline that defines the view.- Parameters:
viewName- the name of the view to createviewOn- the backing collection/view for the viewpipeline- the pipeline that defines the view- Since:
- 3.4
- MongoDB documentation
- Create Command
- Since server release
- 3.4
-
createView
void createView(String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline, com.mongodb.client.model.CreateViewOptions createViewOptions)
Creates a view with the given name, backing collection/view name, aggregation pipeline, and options that defines the view.- Parameters:
viewName- the name of the view to createviewOn- the backing collection/view for the viewpipeline- the pipeline that defines the viewcreateViewOptions- various options for creating the view- Since:
- 3.4
- MongoDB documentation
- Create Command
- Since server release
- 3.4
-
createView
void createView(ClientSession clientSession, String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline)
Creates a view with the given name, backing collection/view name, and aggregation pipeline that defines the view.- Parameters:
clientSession- the client session with which to associate this operationviewName- the name of the view to createviewOn- the backing collection/view for the viewpipeline- the pipeline that defines the view- Since:
- 3.6
- MongoDB documentation
- Create Command
- Since server release
- 3.6
-
createView
void createView(ClientSession clientSession, String viewName, String viewOn, List<? extends org.bson.conversions.Bson> pipeline, com.mongodb.client.model.CreateViewOptions createViewOptions)
Creates a view with the given name, backing collection/view name, aggregation pipeline, and options that defines the view.- Parameters:
clientSession- the client session with which to associate this operationviewName- the name of the view to createviewOn- the backing collection/view for the viewpipeline- the pipeline that defines the viewcreateViewOptions- various options for creating the view- Since:
- 3.6
- MongoDB documentation
- Create Command
- Since server release
- 3.6
-
watch
ChangeStreamIterable<org.bson.Document> watch()
Creates a change stream for this database.- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
<TResult> ChangeStreamIterable<TResult> watch(Class<TResult> resultClass)
Creates a change stream for this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
resultClass- the class to decode each document into- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
ChangeStreamIterable<org.bson.Document> watch(List<? extends org.bson.conversions.Bson> pipeline)
Creates a change stream for this database.- Parameters:
pipeline- the aggregation pipeline to apply to the change stream.- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
<TResult> ChangeStreamIterable<TResult> watch(List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)
Creates a change stream for this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
pipeline- the aggregation pipeline to apply to the change streamresultClass- the class to decode each document into- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
ChangeStreamIterable<org.bson.Document> watch(ClientSession clientSession)
Creates a change stream for this database.- Parameters:
clientSession- the client session with which to associate this operation- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
<TResult> ChangeStreamIterable<TResult> watch(ClientSession clientSession, Class<TResult> resultClass)
Creates a change stream for this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
clientSession- the client session with which to associate this operationresultClass- the class to decode each document into- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
ChangeStreamIterable<org.bson.Document> watch(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline)
Creates a change stream for this database.- Parameters:
clientSession- the client session with which to associate this operationpipeline- the aggregation pipeline to apply to the change stream.- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
watch
<TResult> ChangeStreamIterable<TResult> watch(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)
Creates a change stream for this database.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
clientSession- the client session with which to associate this operationpipeline- the aggregation pipeline to apply to the change streamresultClass- the class to decode each document into- Returns:
- the change stream iterable
- Since:
- 3.8
- MongoDB documentation
- Change Streams
- Since server release
- 4.0
-
aggregate
AggregateIterable<org.bson.Document> aggregate(List<? extends org.bson.conversions.Bson> pipeline)
Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.- Parameters:
pipeline- the aggregation pipeline- Returns:
- an iterable containing the result of the aggregation operation
- Since:
- 3.10
- MongoDB documentation
- Aggregate Command
- Since server release
- 3.6
-
aggregate
<TResult> AggregateIterable<TResult> aggregate(List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)
Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
pipeline- the aggregation pipelineresultClass- the class to decode each document into- Returns:
- an iterable containing the result of the aggregation operation
- Since:
- 3.10
- MongoDB documentation
- Aggregate Command
- Since server release
- 3.6
-
aggregate
AggregateIterable<org.bson.Document> aggregate(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline)
Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.- Parameters:
clientSession- the client session with which to associate this operationpipeline- the aggregation pipeline- Returns:
- an iterable containing the result of the aggregation operation
- Since:
- 3.10
- MongoDB documentation
- Aggregate Command
- Since server release
- 3.6
-
aggregate
<TResult> AggregateIterable<TResult> aggregate(ClientSession clientSession, List<? extends org.bson.conversions.Bson> pipeline, Class<TResult> resultClass)
Runs an aggregation framework pipeline on the database for pipeline stages that do not require an underlying collection, such as$currentOpand$listLocalSessions.- Type Parameters:
TResult- the target document type of the iterable.- Parameters:
clientSession- the client session with which to associate this operationpipeline- the aggregation pipelineresultClass- the class to decode each document into- Returns:
- an iterable containing the result of the aggregation operation
- Since:
- 3.10
- MongoDB documentation
- Aggregate Command
- Since server release
- 3.6
-
-