クラス MongoTransactionManager

実装されているすべてのインターフェース:
SerializableSEInitializingBeanConfigurableTransactionManagerPlatformTransactionManagerResourceTransactionManagerTransactionManager

public class MongoTransactionManager extends AbstractPlatformTransactionManager implements ResourceTransactionManager, InitializingBean
単一の MongoDatabaseFactory の ClientSession ベースのトランザクションを管理する PlatformTransactionManager 実装。

指定された MongoDatabaseFactory から ClientSession をスレッドにバインドします。Readonly トランザクションは ClientSession 上で動作し、因果一貫性を有効にします。また、startcommitabort トランザクションも有効です。

アプリケーションコードでは、標準の MongoDatabaseFactory.getMongoDatabase() 呼び出しではなく、MongoDatabaseUtils.getDatabase(MongoDatabaseFactory) を介して MongoDatabase を取得する必要があります。MongoTemplate などの Spring クラスは、この戦略を暗黙的に使用します。デフォルトでは、コミット操作が失敗すると TransactionSystemException が発生します。MongoDB リファレンスマニュアルに記載されているように、doCommit(MongoTransactionObject) をオーバーライドしてコミット操作を再試行しますの動作を実装することもできます。

導入:
2.1
作成者:
Christoph Strobl, Mark Paluch
関連事項: