Docs Menu
Docs Home
/ / /
Kotlin Sync ドライバー

MongoDB からのデータの読み取り

項目一覧

  • Overview
  • サンプル アプリケーション
  • ドキュメントの検索
  • コレクション内のドキュメントをカウント
  • クエリから返されたドキュメントをカウントする
  • 推定ドキュメント数
  • Retrieve Distinct Values
  • データの変更を監視

このページでは、 Kotlin Sync ドライバーを使用してドキュメントを検索するために使用できる一般的な方法を示すコピー可能なコード例を紹介します。

Tip

このページに記載されているメソッドの詳細については、各セクションに提供されている関連するガイドへのリンクを参照してください。

このページの例を使用するには、コード例をサンプル アプリケーションまたは独自のアプリケーションにコピーします。 <connection string URI>など、コード例にあるすべてのプレースホルダーを、MongoDB 配置に関連する値に置き換えてください。

次のサンプルアプリケーションを使用して、このページのコード例をテストできます。 サンプル アプリケーションを使用するには、次の手順を実行します。

  1. Maven または Gradle プロジェクトに Kotlin Sync ドライバーがインストールされていることを確認します。

  2. 次のコードをコピーし、新しい.ktファイルに貼り付けます。

  3. このページからコード例をコピーし、 ファイル内の指定された行に貼り付けます。

1import com.mongodb.ConnectionString
2import com.mongodb.MongoClientSettings
3import com.mongodb.client.model.*
4import com.mongodb.kotlin.client.*
5import org.bson.Document
6
7fun main() {
8 val uri = "<connection string URI>"
9
10 val settings = MongoClientSettings.builder()
11 .applyConnectionString(ConnectionString(uri))
12 .retryWrites(true)
13 .build()
14
15 // Create a new client and connect to the server
16 val mongoClient = MongoClient.create(settings)
17 val database = mongoClient.getDatabase("<database name>")
18 val collection = database.getCollection<Document>("<collection name>")
19
20 // Start example code here
21
22 // End example code here
23}

Tip

Kotlin Sync ドライバーをインストールする方法については、「 ダウンロードとインストール 」を参照してください。

次の例では、指定されたフィルターで指定された条件に一致するドキュメントのリストを検索します。

val filter = <filter>
val results = collection.find(filter)
results.forEach { result ->
print(result)
}

find()メソッドについて詳しくは、 「 ドキュメント検索 」のガイドを参照してください。

次の例では、指定された コレクション内のドキュメントの数を返します。

val count = collection.countDocuments()
print(count)

countDocuments()メソッドの詳細については、ドキュメントのカウント ガイドの「正確なカウントの取得」セクションを参照してください。

次の例では、指定されたフィルターによって指定された条件に一致するドキュメントの数を返します。

val filter = <filter>
val queryCount = collection.countDocuments(filter)
print(queryCount)

countDocuments()メソッドの詳細については、ドキュメントのカウント ガイドの「正確なカウントの取得」セクションを参照してください。

次の例では、コレクションのメタデータに基づいて、指定されたコレクション内のドキュメントのおおよその数を返します。

val estimatedCount = collection.estimatedDocumentCount()
print(estimatedCount)

estimatedDocumentCount()メソッドの詳細については、ドキュメントのカウント ガイドの「推定カウントの取得」セクションを参照してください。

次の例では、指定されたコレクション内の指定されたフィールド名のすべての個別の値を返します。

val distinctResults = collection.distinct("<field name>")
distinctResults.forEach { result ->
print(result)
}

distinct()メソッドの詳細については、「個別のフィールド値の取得 」ガイドを参照してください。

次の例では、特定のコレクションの変更ストリームを作成し、そのコレクション内の後続の変更イベントを出力します。

val changeStream = collection.watch()
changeStream.forEach { changeEvent ->
print(changeEvent)
}

watch()メソッドの詳細については、「データの変更を監視 」のガイドを参照してください。

戻る

トランザクション