MongoDB に接続する
Java Reactive Streams ドライバーは、次の 3 つのコンポーネントで構成される Reactive Streams API の実装です。
Publisher
Subscriber
Subscription
Publisher
は、 Subscriber
またはSubscriber
の複数のインスタンスから受信した要求に従って公開される、無制限の数のシーケンス要素のプロバイダーです。 Subscription
は、 Publisher
にサブスクライブするSubscriber
の 1 対 1 のライフサイクルを表します。
Tip
リアクティブ ストリームの詳細については、 Reactive Streams ドキュメントをご覧ください。
このチュートリアルでは、データベースをクエリするためにJava Reactive Streams Subscribers
を実装する必要があります。 このガイドでは、Reactive Streams 仕様に基づいてJava Reactive Streams Subscribers
を実装するライブラリである Reactive Streams ライブラリのメソッドを使用します。
React ライブラリの詳細については、「 使用開始 」を 参照してください。 プロジェクト React のドキュメントを参照してください。
Java Reactive Streams ドライバー アプリケーションの作成
次の手順を完了するには、統合開発環境(IDE)内のプロジェクトを使用する必要があります。 プロジェクトで、 Java
パッケージにQueryDatabase
という名前の新しいJavaファイルを作成します。 次のコードをコピーして、 QueryDatabase
ファイルに貼り付けます。
import com.mongodb.*; import com.mongodb.reactivestreams.client.MongoCollection; import org.bson.Document; import reactor.core.publisher.Mono; import com.mongodb.reactivestreams.client.MongoClient; import com.mongodb.reactivestreams.client.MongoClients; import com.mongodb.reactivestreams.client.MongoDatabase; import static com.mongodb.client.model.Filters.eq; public class QueryDatabase { public static void main(String[] args) { // Replace the placeholder with your Atlas connection string String uri = "<connection string>"; // Construct a ServerApi instance using the ServerApi.builder() method ServerApi serverApi = ServerApi.builder() .version(ServerApiVersion.V1) .build(); MongoClientSettings settings = MongoClientSettings.builder() .applyConnectionString(new ConnectionString(uri)) .serverApi(serverApi) .build(); // Create a new client and connect to the server try (MongoClient mongoClient = MongoClients.create(settings)) { MongoDatabase database = mongoClient.getDatabase("sample_mflix"); MongoCollection<Document> movies = database.getCollection("movies"); Mono.from(movies.find(eq("title", "Back to the Future"))) .doOnSuccess(i -> System.out.println(i)) .doOnError(err -> System.out.println("Error: " + err.getMessage())) .block(); } } }
接続文字列の割り当て
プレースホルダーを、このガイドの 接続文字列の string<connection string>
ステップからコピーした接続string に置き換えます。
アプリケーションの実行
IDE またはshellでアプリケーションを実行します。 出力は、 MongoDBに接続し、データベースをクエリしたことを示しています。
{ _id: ..., plot: 'A young man is accidentally sent 30 years into the past...', genres: [ 'Adventure', 'Comedy', 'Sci-Fi' ], ... title: 'Back to the Future', ... }
Tip
エラーが発生した場合は、適切な 接続stringが指定されているかどうか、およびサンプルデータがロードされているかどうかを確認してください。
これらの手順を完了すると、ドライバーを使用してMongoDBデプロイに接続し、データベースをクエリし、結果を出力する動作アプリケーションが作成されます。
注意
この手順で問題が発生した場合は、 MongoDB Community フォーラムでサポートを依頼するか、このページの右側または右下にある Rate this pageタブを使用してフィードバックを送信してください。