【问题标题】:Transactions In MongoDBMongoDB 中的事务
【发布时间】:2013-02-04 18:01:42
【问题描述】:

我正在使用带有 Java 和 Spring Data 的 NoSQL 数据库 MongoDB。我知道 MongoDB 只支持单个文档的事务。

我正在使用 Spring Transactions 来执行 MongoDB 事务。我正在使用事务模板。使用 TransactionTemplate 时需要在 TransactionManager 中设置什么?

编辑

我有这样的事情:

<bean id=”txtTemplateBean” class=”org.springframework.transaction.support.TransactionTemplate”>
<property name=”transactionManager” ref=”txnManagerBean”></property>

我需要为 MongoDB 数据库定义 txnManagerBean 以指向 DataSourceTransactionManager 之类的东西。

【问题讨论】:

  • 到目前为止你有什么收获?
  • 目前还没有。对于 MongoDB,我需要一个 DataSourceTransactionManager 或类似的东西。谷歌回报不多。有什么想法吗?
  • 请看上面的编辑

标签: java spring mongodb transactions


【解决方案1】:

【讨论】:

【解决方案2】:

MongoDB 确实支持使用 two-phase commits 的事务-like 语义。

还有另一个independent effort 支持使用乐观锁在mongodb 中的事务。

【讨论】:

  • 这个答案已经过时了。 MongoDB4.0 现在支持 ACID 事务。
【解决方案3】:

MongoDB 不支持事务,它只支持原子操作。

http://docs.mongodb.org/manual/tutorial/model-data-for-atomic-operations/

这是一个使用乐观锁定为 MongoDB 实现事务的人的帖子: https://stackoverflow.com/a/12757751/1173560

【讨论】:

  • 不再是真的了。
猜你喜欢
  • 2015-11-13
  • 1970-01-01
  • 2011-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
相关资源
最近更新 更多