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

MongoDB に接続する

項目一覧

  • Overview
  • サンプル アプリケーション
  • 接続
  • ローカル配置
  • Atlas
  • レプリカセット
  • トランスポート層セキュリティ (TLS)
  • TLS の有効化
  • ホスト名検証を無効化する
  • ネットワーク圧縮
  • 圧縮アルゴリズム
  • zlibCompressionLevel
  • サーバーの選択
  • Stable API

このページには、 Kotlin Sync ドライバーを使用してさまざまな設定を指定してアプリケーションを MongoDB に接続する方法を示すコード例が含まれています。

Tip

接続オプション

このページの接続オプションの詳細については、各セクションに記載されているリンクを参照してください。 詳しくは、 接続オプションの指定ガイドをご覧ください。

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

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

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

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

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

1import com.mongodb.kotlin.client.MongoClient
2import org.bson.Document
3
4fun main() {
5
6 // Start example code here
7
8 // End example code here
9
10 val database = mongoClient.getDatabase("admin")
11
12 val command = Document("ping", 1)
13 val commandResult = database.runCommand(command)
14 println("Pinged your deployment. You successfully connected to MongoDB!")
15}

次のセクションでは、MongoDB のローカル インスタンスや Atlas のクラウドでホストされるインスタンスなど、さまざまなターゲットに接続する方法について説明します。

次のコードは、 のローカルインスタンスに接続するための接続string MongoDBを示しています。

val uri = "mongodb://localhost:27017/"
val mongoClient = MongoClient.create(uri)

次のコードは、 でホストされている配置に接続するための接続string Atlasを示しています。

val uri = "mongodb+srv://<db_username>:<db_password>@<hostname/port>/?<options>"
val mongoClient = MongoClient.create(uri)

次のコードは、レプリカセットに接続するための接続stringを示しています。

val uri = "mongodb://<replica set member>:<port>/?replicaSet=<replica set name>"
val mongoClient = MongoClient.create(uri)

次のセクションでは、TLS プロトコルを有効にしながら MongoDB に接続する方法について説明します。 Kotlin Sync ドライバーで TLS を使用する方法の詳細については、「接続で TLS を有効にする 」を参照してください。

次のタブでは、接続で TLS を有効にする方法を示します。

val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString("<connection string>"))
.applyToSslSettings { builder ->
builder.enabled(true)
}
.build()
val mongoClient = MongoClient.create(settings)
val uri = "mongodb+srv://<db_username>:<db_password>@<cluster-url>?tls=true"
val mongoClient = MongoClient.create(uri)

TLS を有効にする方法の詳細については、TLS 構成ガイドの「 TLSを有効にする 」を参照してください。

次のタブでは、TLS を使用して接続するときにホスト名検証を無効にする方法を示します。

val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString("<connection string>"))
.applyToSslSettings { builder ->
builder.enabled(true)
builder.invalidHostNameAllowed(true)
}
.build()
val mongoClient = MongoClient.create(settings);
val uri = "mongodb://<db_username>:<db_password>@<hostname>:<port>/?"tls=true&tlsAllowInvalidHostnames=true"
val mongoClient = MongoClient.create(uri)

次のセクションでは、ネットワーク圧縮アルゴリズムを指定しながら MongoDB に接続する方法について説明します。

次のタブは、MongoDB に接続するときに、利用可能なすべてのコンプレッサーを指定する方法を示しています。

val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString("<connection string>"))
.compressorList(
listOf(
MongoCompressor.createSnappyCompressor(),
MongoCompressor.createZlibCompressor(),
MongoCompressor.createZstdCompressor())
)
.build()
val mongoClient = MongoClient.create(settings)
val uri = ConnectionString("mongodb+srv://<db_username>:<db_password>@<cluster-url>/?compressors=snappy,zlib,zstd")
val mongoClient = MongoClient.create(uri)

次のタブは、 zlibコンプレッサーの圧縮レベルを指定する方法を示しています。

val zlib = MongoCompressor.createZlibCompressor()
val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString(uri))
.compressorList(listOf(zlib.withProperty(MongoCompressor.LEVEL, <level>)))
.build()
val mongoClient = MongoClient.create(settings)
val uri = "mongodb://<db_username>:<db_password>@<hostname>:<port>/?" +
"compressors=zlib" +
"zlibCompressionLevel=<zlib compression level>"
val mongoClient = MongoClient.create(uri)

次のコードは、サーバー選択関数を指定する接続stringを示しています。

val client = MongoClient.create("mongodb://<db_username>:<db_password>@<hostname>:<port>",
server_selector=<selector function>)

次のコードは、 MongoClientSettingsインスタンス内で Stable API 設定を指定する方法を示しています。

val serverApi = ServerApi.builder()
.version(ServerApiVersion.V1)
.build()
val uri = "<connection string>"
val settings = MongoClientSettings.builder()
.applyConnectionString(ConnectionString(uri))
.serverApi(serverApi)
.build()
val client = MongoClient.create(settings)

Stable API の詳細については、「 Stable API 」を参照してください。

戻る

次のステップ