2012-07-26 67 views
9

我们试图将我们的旧Oracle数据库应用程序转换为NO-SQL,并且我们选择了Mongo数据库。MongoDB与Java的集成

对于像MongoDB这样的Mongo数据库,是否有ORM支持来减少我们的编码?

我们可以使用JPA规范为MongoDB构建一个应用程序吗?

如果JPA,哪个ORM供应商最好选择,为什么?

他们是否为MongoDB提供了非sql语言,以便我们可以使用非关系数据库构建应用程序?

回答

3

DataNucleus JPA提供使用真正 JPA(相对于弹簧数据,吗啡等,这有自己的API,因此你不必直接携带完全持久性的MongoDB - 但事实可能并非成为你的主要关注点);在DataNucleus的情况下,它提供了JPA2(带有一些预览JPA2.1功能)。它还提供了HBase,RDBMS,NeoDatis,Excel,ODF,XML,JSON,LDAP等JPA持久性,以防您需要可移植性。

+0

谢谢,我正在寻找JPA集成解决方案,因为我们对它的API感到不太舒服。有没有什么好的教程可以建议我将Mongo DB与JPA集成? – bali208 2012-07-27 03:55:53

+0

http://www.datanucleus.org/products/accessplatform_3_1/jpa/guides/tutorial_mongodb.html – DataNucleus 2012-07-27 04:10:21

1

你可以看看Spring Data ,并检查了这Tutorial

+1

请注意,只有链接的答案是不鼓励的,所以答案应该是搜索解决方案的终点(而另一个引用的中途停留时间往往会过时)。请考虑在此添加独立的摘要,并将链接保留为参考。 – 2014-04-30 12:43:23

5

你可以选择Morphia。它是Mongodb的其他ORM工具中最稳定的一个。

一些其他的工具有:

您可以找到MongoDB Third Party Frameworks and Libs部分的完整列表。

+0

谢谢,请考虑你的建议。 Morphia是否实现JPA规范? 因此,我们可以选择它作为ORM的供应商吗? – bali208 2012-07-27 03:28:58

+0

不,Morphia没有实现JPA规范。 – Trisha 2013-07-03 11:35:32

2

尝试昆德拉。比Morphia具有更好的性能,并提供了很多简单的代码/实现方法。

-Vivek

1

PlayORM还支持MongoDB的现在。 PlayORM是一种对象NoSQL映射解决方案,因此您可以编写POJO并让它处理MongoDB的编组/解组的所有细节。访问它的documentation这里