MongoClient の作成
Overview
MongoDB 配置に接続するには、次の 2 つのものが必要です。
接続 URI ( 接続string とも呼ばれます)で、接続するKotlin 配置の SyncMongoDB ドライバーに指示します。
MongoDB 配置への接続を作成し、操作を実行するMongoClientオブジェクト。
MongoClientSettings
を使用して、MongoDB に接続中に Kotlin Sync ドライバーの動作をカスタマイズすることもできます。
このガイドでは、接続stringを作成し、MongoClient
オブジェクトを使用してMongoDBに接続する方法について説明します。
接続URI
標準の接続stringには次のコンポーネントが含まれます。
コンポーネント | 説明 |
---|---|
mongodb:// | 必須: これを標準接続形式の文字列として識別するプレフィックス。 |
username:password | 任意。 認証資格情報。 これらを含めると、クライアントは authSource で指定されたデータベースに対してユーザーを認証します。 |
host[:port] | 必須。 MongoDB が実行されているホストとオプションのポート番号。 ポート番号を指定しない場合、ドライバーはデフォルトのポート 27017 を使用します。 |
/defaultauthdb | 任意。 接続stringに username:password@ 認証情報が含まれている一方で、authSource オプションが含まれていない場合に使用する認証データベース。 このコンポーネントを含めない場合、クライアントはadmin データベースに対してユーザーを認証します。 |
?<options> | 任意。 接続固有のオプションを <name>=<value> ペアとして指定するクエリstringです。 これらのオプションについて詳しくは、「 接続オプションの指定」を参照してください。 |
接続 の作成の詳細については、string MongoDB Serverドキュメントの「 接続 文字列 」を参照してください。
Atlas 接続例
Atlas 上の MongoDB 配置に接続するには、まずクライアントを作成する必要があります。
接続 URI を string としてMongoClient.create()
メソッドに渡して、MongoDB インスタンスに接続できます。
// Replace the placeholder with your Atlas connection string val uri = "<connection string>" // Create a new client and connect to the server val mongoClient = MongoClient.create(uri) val database = mongoClient.getDatabase("sample_mflix")
また、 MongoClientSettings
オブジェクトをMongoClient.create()
メソッドに渡すことで、必要な構成を持つクライアントを作成することもできます。
MongoClientSettings
オブジェクトをインスタンス化するには、ビルダ メソッドを使用して接続stringを指定し、applyConnectionString()
メソッドとその他のクライアント オプションを使用します。 必要な構成が完了したら、 build()
メソッドを呼び出します。
新しいサーバー バージョンにアップグレードするときに重大な変更を回避するために、Stable API バージョンのクライアント オプションを設定できます。 Stable API 機能について詳しくは、「 Stable API 」ページをご覧ください。
次のコードは、Atlas 上の MongoDB 配置に接続するときに接続文字列と Stable API クライアント オプションを指定し、接続が成功したことを確認する方法を示します。
// start-connect-to-atlas-w-uri // Replace the placeholder with your Atlas connection string val uri = "<connection string>" val mongoClient1 = MongoClient.create(uri) // end-connect-to-atlas-w-uri // Construct a ServerApi instance using the ServerApi.builder() method val serverApi = ServerApi.builder() .version(ServerApiVersion.V1) .build() val settings = MongoClientSettings.builder() .applyConnectionString(ConnectionString(uri)) .serverApi(serverApi) .build() // Create a new client and connect to the server val mongoClient = MongoClient.create(settings) val database = mongoClient.getDatabase("sample_mflix") try { // Send a ping to confirm a successful connection val command = Document("ping", BsonInt64(1)) val commandResult = database.runCommand(command) println("Pinged your deployment. You successfully connected to MongoDB!") } catch (me: MongoException) { System.err.println(me) }
API ドキュメント
Kotlin Sync ドライバーを使用してMongoClient
オブジェクトを作成する方法の詳細については、次の API ドキュメントを参照してください。