Question

J'utilise Hibernate ORM, qui est une implémentation de la spécification JPA pour gérer relationnelle Les données. J'ai aussi entendu parler de la spécification JDO qui devait faire la même chose (gérer les données relationnelles).

Quelles sont les différences fondamentales entre les deux? Tous les exemples de code les plus appréciés. Comment JDO intégrer d'autres technologies Java empilements par exemple EJB3 ?

Était-ce utile?

La solution

Essayez ces JDO JPA FAQ , JDO ou JPA , JDO .V. JPA , JDO .V. JPA - API , JDO .V. JPA - ORM

JDO existait bien avant JPA, et a une portée plus large. JPA est uniquement pour SGBDR, et (même dans JPA2) ne fournit pas le soutien complet qui fournit JDO. Les liens et d'autres messages dans ce forum devraient fournir suffisamment de lecture pour expliquer tous les côtés des arguments.

- Andy ( DataNucleus )

Autres conseils

JPA a été défini pour unifier et remplacer les spécifications précédentes de persistance Java existantes des EJB CMP et JDO. JPA a été libéré dans le cadre d'EJB 3.0, et fait partie de la spécification Java EE pris en charge par Oracle WebLogic, IBM Websphere, JBoss Redhat, et tout autre fournisseur Java EE.

Il existe de nombreux produits de soutien JPA principaux (TopLink / EclipseLink, Hibernate, OpenJPA, DataNucleus), mais peu à aucun soutien JDO ou CMP. Ainsi, il semble JPA a fait un bon travail de remplacement à la fois.

En ce qui concerne JPA n'étant SGBDR, qui est tout à fait faux, (même DataNucleus le seul reste de produit JDO que je suis au courant, soutient JPA sur toute plate-forme non relationnelle qu'il appuie sur JDO).

Il y a aussi beaucoup d'autres produits qui prennent en charge JPA sur les plates-formes non relationnelles, telles que le support NoSQL de EclipseLink et EIS (MongoDB, Oracle NoSQL, XML, bases de données existantes), Kundera, DataNucleus, objet même des bases de données telles que ObjectDB qui prennent en charge JPA comme leur API Java.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top