SyncMongoClient
Entry-point to the KtMongo Coroutines driver.
The Coroutine client provides a coroutine-aware API which internally uses the official Kotlin driver.
Organizing data
Accessing MongoDB data happens in three steps:
SyncMongoClient: represents the connection to the MongoDB application, handles the lifecycle and the configuration.
SyncMongoDatabase (accessed with SyncMongoClient.database): each database groups data together. This allows deploying multiple applications (or the same application multiple times) without name collisions.
SyncMongoCollection (accessed with SyncMongoDatabase.collection): each collection stores data together. Documents in a collection may have a different structure.
Example
@Serializable
class User(
val _id: ObjectId,
val name: String,
val age: Int,
)
fun main() = runBlocking {
val client = SyncMongoClient("mongodb://localhost:27017")
val database = client.database("my-app")
val users = database.collection<User>("users")
println("The database contains ${users.count()} users.")
}Content copied to clipboard
See also
Convert an existing instance from the official Kotlin driver.