AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。
Docs Menu

MongoClient の作成

MongoDB 配置に接続するには、次の 2 つのものが必要です。

  • 接続 URI (接続文字列とも呼ばれます)で、接続するMongoDB配置をKotlinドライバーに指示します。

  • MongoDB 配置への接続を作成し、それに対して操作を実行できるようにするMongoClientオブジェクト。

これらのコンポーネントのいずれかを使用して、 MongoDB .に接続中にKotlinドライバーの動作をカスタマイズすることもできます。

このガイドでは、接続stringを作成し、MongoClient オブジェクトを使用してMongoDBに接続する方法について説明します。

接続 URI は、ドライバが MongoDB 配置に接続するための指示のセットを提供します。このセットで、ドライバーに MongoDB への接続方法と接続中の動作を指示します。次の図は、サンプル接続 URI の各部分について説明しています。

接続stringの部分図

This figure uses the Standard Connection String Format, mongodb for the protocol. You can also use the DNS Seed List Connection Format, mongodb+srv, if you want more flexibility of deployment and the ability to change the servers in rotation without reconfiguring clients.

注意

If your deployment is on MongoDB Atlas, see the Atlas driver connection guide and select Kotlin from the language dropdown to retrieve your connection string.

パスワードベースの認証メカニズムを使用している場合、接続 URI の次の部分には認証情報が含まれます。 userの値をデータベースユーザー名に置き換え、 passの値をデータベースユーザーのパスワードに置き換えます。 認証メカニズムで認証情報が必要ない場合は、接続 URI のこの部分を省略します。

接続 URI の次の部分では、ホスト名または IP アドレスを指定し、その後に MongoDB インスタンスのポートを指定します。この例では、sample.host はホスト名を表し、27017 はポート番号を表します。これらの値を置き換えて、MongoDB インスタンスを参照します。

接続 URI の最後の部分には、パラメータとして接続オプションが含まれます。この例では、maxPoolSize=20 と w=majority の 2 つの接続オプションを設定しています。接続オプションの詳細については、 接続オプションガイドを参照してください。

MongoDBに接続して MongoDB と通信するには、 MongoClientクラスを使用します。

MongoClient を構築するには、MongoClient.create() メソッドを使用します。

次のコードは、MongoDBの配置に接続する MongoClient を作成する方法を示しています。

import com.mongodb.kotlin.client.coroutine.MongoClient
val uri = "mongodb://localhost:27017/"
val client = MongoClient.create(uri)

重要

クライアントの再利用

各 MongoClient はデータベースへのスレッドセーフな接続のプールを表すため、ほとんどのアプリケーションで必要なインスタンスは、複数のスレッド間でも、MongoClient の 1 つだけです。最大接続数などのすべてのリソース使用量の制限は、個々の MongoClient インスタンスに適用されます。

MongoClient の動作を制御するために使用できるさまざまな設定の詳細については、MongoClient 設定ガイド を参照してください。

Tip

インスタンスが不要になった場合は、常に MongoClient.close() を呼び出してリソースをクリーンアップします。

このセクションで説明されるメソッドとクラスの詳細については、次の API ドキュメントを参照してください。