MongoDB中的序列生成

时间:2014-03-22 19:35:39

标签: java oracle mongodb spring-mvc spring-data

我正在开发一个后端主要是Oracle SQL的项目。该项目在java中使用spring-mvc / spring-data /和hibernate完成。

为了对表进行简单的插入,我们使用@SequenceGenerator注释注释了我们的DAO类。这与Oracle很好地协同工作,因为Sequence概念是Oracle的原生概念。我们试图用MongoDB在概念上模拟相同的东西。我在这里查看了这个文档:

http://docs.mongodb.org/manual/tutorial/create-an-auto-incrementing-field/

本文档建议从要插入的基础集合中创建单独的集合。在这种情况下,创建一个“计数器”集合,您只需使用键“_id”=>插入单个文档。 “userid”,你有一个键“seq”=> 0(或某个整数)。

然后,您创建一个单独的javascript函数,可以原子地递增该序列。最后,当你想在你的底层集合中创建新文档时,只需调用javascript函数并将你的密钥“_id”设置为javascript返回的任何内容(在这种情况下是递增的值)。

我的问题是:

是否有任何其他建议的方法来创建MongoDB文档建议的序列?有什么缺点吗?或者这是一种可靠的方法吗?

感谢。

0 个答案:

没有答案