0

我正在编写一个使用 JPA 进行持久性的应用程序。目前我正在使用 Hibernate 和 MySQL 数据库进行测试。将要部署的服务器已经运行了 ZODB。为了避免必须专门为此应用程序安装 MySQL,最好使用 ZODB 作为 JPA 的后端。这可能,有或没有Hibernate?

4

3 回答 3

1

您是指 Zope 对象数据库中的 ZODB 吗?如果是这样,答案是否定的。JPA 是关于 ORM(对象关系映射)的,这意味着您正在使用关系数据库。ZODB 是一个完全不同的对象数据库。如果要使用对象数据库,为什么要使用 JPA?

于 2010-12-15T12:05:14.537 回答
1

不,ZODB 是一个特定于 python 的对象数据库。它使用 Python 特定的技巧来加载和存储对象状态,这是 JPA 无法提供的(它旨在将对象映射到关系数据库)。

于 2010-12-15T13:14:19.573 回答
0

当前没有持久化到 ZOPE DB 的实现,但您可以通过添加对该 DB 的支持,通过 DataNucleus 使用 JPA 添加对持久化它的支持。听起来很复杂,但基本可以在几天内使用……根据 http://www.datanucleus.org/servlet/wiki/display/ENG/HOWTO+Support+a+new+datastore DataNucleus 已经支持其他对象通过 JPA(db4o,NeoDatis)的数据存储,因此它应该是可行的

于 2010-12-21T15:21:53.737 回答