2.x から 3.x への移行ガイド

Spring Data MongoDB 3.x には MongoDB Java ドライバー 4.x が必要です
ドライバーのバージョンの詳細については、MongoDB ドキュメント (英語) を参照してください。

依存関係の変更

  • org.mongodb:mongo-java-driver (uber jar) は次のように置き換えられました。

    • bson-jar

    • core-jar

    • sync-jar

依存関係を変更すると、同期ドライバーをプルしなくてもリアクティブサポートを使用できるようになります。注: 新しい同期ドライバーは com.mongodb.DBObject をサポートしなくなりました。代わりに org.bson.Document を使用してください。

シグネチャーの変更

  • MongoTemplate は com.mongodb.MongoClient および com.mongodb.MongoClientOptions をサポートしなくなりました。代わりに com.mongodb.client.MongoClient および com.mongodb.MongoClientSettings を使用してください。

AbstractMongoConfiguration を使用している場合は、AbstractMongoClientConfiguration に切り替えてください。

名前空間変更

com.mongodb.client.MongoClient に切り替えるには、構成 XML がある場合はそれを更新する必要があります。必要な接続情報を提供する最良の方法は、接続文字列を使用することです。詳細は MongoDB ドキュメント (英語) を参照してください。

<mongo:mongo.mongo-client id="with-defaults" />
<context:property-placeholder location="classpath:..."/>

<mongo:mongo.mongo-client id="client-just-host-port"
                          host="${mongo.host}" port="${mongo.port}" />

<mongo:mongo.mongo-client id="client-using-connection-string"
                          connection-string="mongodb://${mongo.host}:${mongo.port}/?replicaSet=rs0" />
<mongo:mongo.mongo-client id="client-with-settings" replica-set="rs0">
		<mongo:client-settings cluster-connection-mode="MULTIPLE"
							   cluster-type="REPLICA_SET"
							   cluster-server-selection-timeout="300"
							   cluster-local-threshold="100"
							   cluster-hosts="localhost:27018,localhost:27019,localhost:27020" />
	</mongo:mongo.mongo-client>