Différence entre JPA et JDO?
veux développer mon projet sur Google App Engine .Je veux utiliser google grande table de la base de données. Pour la base de données, j'ai deux options JPA et JDO. Allez-vous les gars, merci de me suggérer? Les deux sont de nouveau pour moi et j'ai besoin de les apprendre. Je vais donc être concentré sur une seule après vos réponses.
OriginalL'auteur user246160 | 2010-02-12
Vous devez vous connecter pour publier un commentaire.
Puisque vous êtes à l'aide de Données du Noyau, voir leur FAQ sur JDO vs JPA. http://www.datanucleus.org/products/accessplatform_3_0/jdo_jpa_faq.html
OriginalL'auteur marklai
Depuis GAE BigTable n'est pas un SGBDR, JDO est un meilleur choix. Il y a certains détails à l'comparaison des articles dans Aphache JDO, il est utile pour moi.
OriginalL'auteur rockXrock
Une différence clé est que JDO soutien d'un riche modèle de domaine (logique de concert avec des données), en fait, toutes les classes peuvent avoir une référence à l'actuel PersistenceManager, émettre des requêtes, et, je suppose, il est possible de ne pas avoir de champs persistants par défaut.
JPA ne soutient pas une telle conception de logiciels. En fait, chaque Entité ne dispose pas d'une référence à la PersistenceManager, pour l'avoir, vous devez recourir à ThreadLocal variables, ce qui n'est pas d'un très élégant et robuste solution.
OriginalL'auteur user1593165
JPA est le leader de la java standard pour la persistance. Donc je vais dire l'utilisation de JPA si vous utilisez des SGBDR et nécessitent de l'ORM.
Hibernate est généralement utilisé en tant qu'implémentation JPA. Si vous avez besoin de quelques fonctionnalités supplémentaires, vous pouvez utiliser hibernate annotations spécifiques.
Cette question qui semble déjà discuté ici JDO vs JPA pour Java sur Google App Engine
Hibernate peut être "généralement utilisé comme une implémentation JPA" mais il ne fonctionne que pour les SGBDR, et, par conséquent, ne fonctionnera pas sur GAE/J. selon les docs pour GAE/J, JDO se rapproche le plus de la banque de données, si bien que la persistance de modèles sont simples et l'interrogation des exigences sont également simple, puis JPA peut également être utilisé. Avec JDO ou JPA l'utilisateur devra utiliser DataNucleus
OriginalL'auteur Padmarag
JPA persiste des objets java de données relationnelle via ORM, tandis que JDO est plus du cahier des charges général pour objet java persistence. Donc, en utilisant JDO vous donnera plus de liberté dans le stockage, la mise en œuvre des options pour vos objets.
OriginalL'auteur Vladimir Vaschenko