OODB JPA реализация реализации с Hibernate - PullRequest
2 голосов
/ 12 декабря 2011

У меня уже есть некоторый опыт работы с Hibernate, но, если я прав, у меня нет способа использовать его для доступа к объектным базам данных, таким как VOD Versant.Поскольку они только что выпустили предварительный просмотр с поддержкой JPA , мне было интересно, могу ли я использовать свои ограниченные навыки Hibernate для использования базы данных объектов с JPA.Если у кого-то есть опыт, пожалуйста, дайте мне знать, если эти версии совместимы.

Best.

Harry

Ответы [ 3 ]

4 голосов
/ 13 декабря 2011

Позвольте мне сначала поставить заявление об отказе от ответственности: я являюсь одним из разработчиков Versant JPA.

Для работы с Versant JPA должно быть достаточно базовых навыков JPA.

Мы предоставляем учебник, который должен работать сразу после установки. Технический предварительный обзор "Versant JPA" и прилагаемый плагин Eclipse. Просто взгляните на это и предоставленное руководство «Начало работы с Versant JPA», чтобы получить первые впечатления о том, как легко им пользоваться.

Я не согласен с некоторыми утверждениями от DataNucleus: Да, Versant - это СУБД, а не СУБД, поэтому мы игнорируем все, что является специфическим к отображению - ваша модель данных Java практически совпадает с моделью данных в базе данных Versant. Однако помимо всего прочего, связанного с отображением, JPA является естественным API для объектной базы данных. Я не согласен с тем, что существует большая корреляция между дизайном JPQL и тем фактом, что JPA был разработан с учетом RDBMS. (На самом деле Microsoft доказала это путем абстрагирования LINQ до уровня, независимого от хранилища данных.)

Все большие различия между реализациями JPA на базе Versant JPA и RDBMS описаны в отдельной главе нашего руководства «Начало работы с JPA». Самым большим из них может быть наше ограничение: иметь поле @Id типа "long" или "java.lang.Long", которое автоматически устанавливается нашей средой выполнения.

У нас также есть реализация JDO, но я бы рекомендовал попробовать наш технический предварительный просмотр Versant JPA (как предполагает термин «предварительный просмотр», он еще не завершен).

Кристиан Ромберг

1 голос
/ 12 декабря 2011

Зачем вам нужен Hibernate, если вы используете объектную базу данных?Hibernate - это инструмент ORM, который обозначает объектно-реляционное отображение.Если вы не используете реляционную базу данных, для чего нужен Hibernate?

Вот ODB, который утверждает, что работает с JPA;может быть, вы можете адаптировать или следовать его примеру с VOS Versant.

0 голосов
/ 12 декабря 2011

Вы не используете никаких «навыков Hibernate» с другим программным обеспечением;Вы используете свои навыки JPA.Это стандартный API, следовательно, те же классы с теми же метаданными и тем же постоянным кодом.Единственное, что отличается, это то, что у вас могут быть некоторые другие свойства персистентности для использования в вашем файле persistence.xml.

Само собой разумеется, JPA был разработан только для СУБД, и различные части (в частности, JPQL) явно не так применимы к СУБД, поэтому это не такой подходящий API, как вы, возможно, пожелаете иметь для этого хранилища данных.и что-то вроде JDO будет более подходящим (который VOD также поддерживает IIRC) ... но в любом случае

...