Docs Menu
Docs Home
/ / /
Java Reactive Streams ドライバー
/

Stable API

項目一覧

  • Overview
  • Stable API を有効にする
  • Stable API の構成
  • トラブルシューティング
  • サーバー上の認識されないフィールド 'apiVersion'
  • apiStrict:true は提供されていますが、コマンド<operation> はAPIバージョンにありません
  • API ドキュメント

注意

Stable API 機能には MongoDB Server 5.0 以降が必要です。

このガイドでは、MongoDB 配置に接続するときにStable API互換性を指定する方法を学習できます。

Stable API 機能を使用すると、指定された API バージョンと互換性のある動作でサーバーに操作が強制的に実行されます。 Stable API を使用すると、サーバーからの一貫した応答が確保され、アプリケーションの API の長期的な安定性が確保されます。

次のセクションでは、MongoDB クライアントの Stable API を有効にしてカスタマイズする方法について説明します。 サポートするコマンドのリストを含む、Stable API Stable APIの詳細については、MongoDB Server マニュアルの を参照してください。

Stable API を有効にするには、次の手順を実行します。

  1. ServerApiオブジェクトを作成し、Stable API バージョンを指定します。 ServerApiVersion列挙型で定義された Stable API バージョンを使用する必要があります。

  2. MongoClientSettings.Builderクラスを使用してMongoClientSettingsオブジェクトを構築します。

  3. MongoClients.create()メソッドを使用してMongoClientをインスタンス化し、 MongoClientSettingsインスタンスをパラメーターとして渡します。

次のコード例は、Stable API バージョン1を指定する方法を示しています。

ServerApi serverApi = ServerApi.builder()
.version(ServerApiVersion.V1)
.build();
// Replace the placeholder with your Atlas connection string
String uri = "<connection string URI>";
MongoClientSettings settings = MongoClientSettings.builder()
.applyConnectionString(new ConnectionString(uri))
.serverApi(serverApi)
.build();
try (MongoClient mongoClient = MongoClients.create(settings)) {
// Perform client operations here
}

Stable APIを使用してMongoClientインスタンスを作成すると、クライアントで実行されるすべてのコマンドに指定された Stable API構成が使用されます。 別の構成を使用してコマンドを実行する必要がある場合は、新しいMongoClientを作成します。

次の表では、Stable APIの動作をカスタマイズするために使用できるServerApi.Builderクラスの連鎖可能なメソッドについて説明しています。

オプション名
説明
strict()
Optional. When true, if you call a command that isn't part of the declared API version, the driver raises an exception.

Default: false
deprecationErrors()
Optional. When true, if you call a command that is deprecated in the declared API version, the driver raises an exception.

Default: false

次のコード例は、 ServerApi.Builderのメソッドを連鎖させてServerApiのインスタンスを構成する方法を示しています。

ServerApi serverApi = ServerApi.builder()
.version(ServerApiVersion.V1)
.strict(true)
.deprecationErrors(true)
.build();

APIバージョンを指定し、 Stable APIをサポートしていないMongoDBサーバーに接続すると、 Java Reactive Streams ドライバーはこの例外を発生させます。 MongoDB Server v 5.0以降を実行中している配置に接続していることを確認してください。

Java Reactive Streams ドライバーは、指定した Stable APIバージョンに含まれない操作をMongoClientが実行する場合に、この例外を発生させます。 このエラーを回避するには、指定された Stable APIバージョンでサポートされている別の操作を使用するか、 ServerApiオブジェクトの構築時にstrictオプションをFalseに設定します。

Java Reactive Streams ドライバーで Stable APIを使用する方法の詳細については、次のAPIドキュメントを参照してください。

戻る

ネットワーク トラフィックを圧縮