IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Persistance des données Java Discussion :

JDO vs JPA que choisir ?


Sujet :

Persistance des données Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut JDO vs JPA que choisir ?
    Bonjour,

    Il y a quelques années que je m'intéresse aux bases de données objet sans vraiment avoir jamais regardé de plus près ce qu'on savait faire. Les bases de données objet ont l'avantage de pouvoir tirer profit de la structure des classes pour stocker plus efficacement les données. Il y a un certain nombre d'arguments en faveur des bases de donnée objet ou relationnelles :

    http://en.wikipedia.org/wiki/ODBMS#A..._disadvantages

    et on en vient assez naturellement à parler de JDO :

    http://www.jdoinstruments.org/whyjdo.htm

    et du coup, on peut se demander quelle solution choisir entre JDO et JPA. On trouvera alors un certain nombre d'informations précieuses ici :

    http://db.apache.org/jdo/jdo_v_jpa.html

    Seulement, ces informations semblent être en contradiction avec cette interview, apparemment du fondateur d'Hibernate qui écarte la question sur JDO :

    http://www.javafree.org/artigo/871462/

    (J'ai pas la date)

    Maintenant, la question, c'est que faire ? Faut il utiliser JDO ou JPA ? Et avec quelles implantations ?

    Si JDO semble plus puissant, il semble aussi qu'il y ait moins d'outils développés qui fournisse une implantation. Est-ce qu'Hibernate en envahissant l'espace aurait-il tué les projets d'implantation d'une norme plus générique ?

    Est-ce une bonne idée d'utiliser des bases de donnée objet plutôt que relationnelles ? Est-ce qu'il existe des bases de donnée objet suffisamment puissantes pour rivaliser avec les bases de donnée relationnelles ? Faut il utiliser JDO ou JPA ?

    En dernier ressort, si je ne trouve pas de réponse, je pourrais peut être faire tout à la fois, grâce à ce projet :

    http://www.datanucleus.org/products/...1_0/index.html

    Le connaissez vous ?

  2. #2
    Membre éclairé
    Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Octobre 2002
    Messages : 89
    Par défaut
    ayant utilisé les 2, je préfère la simplicité de mise en oeuvre de JPA et ça me rassure qu'il y ai plusieurs implémentations, et plus simplement Jpox.

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut
    Comment concrètement s'exprime cette simplicité de mise en oeuvre ?

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    En utilisant JPA, tu restes dans le standard ce qui aura, tôt ou tard, des avantages par rapport aux autres solutions (même si elles sont bonnes).

    Personnellement, je pousse à l'utilisation des EJB3 qui rendent l'implémentation du JPA encore plus secondaire... On passe d'un TopLink à Hibernate sans aucune modification des EJB Entity et EJB Session.
    Comme on peut, en plus, utiliser un conteneur EJB light sur Tomcat, plus rien ne s'y oppose...

    JDO, j'avais tenté de l'utiliser (contrainte client) il y a 2 ans sans jamais trouver la doc qui va bien ou l'implémentation (ça a peut-être évolué depuis )
    Avec Hibernate, tu as des tonnes de doc et exemples...

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    842
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 842
    Par défaut
    Mais JDO est également un standard. Je ne vois pas en quoi JPA a un avantage sur JDO de ce coté là.

    Je ne vois pas non plus en quoi utiliser des composants EJB3 permet d'être plus indépendant de l'implémentation. Les API JPA et JDO sont décrites entièrement et indépendamment des différentes implémentations, et passer d'une à l'autre ne pose a priori aucun problème.

  6. #6
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Billets dans le blog
    1
    Par défaut
    JDO n'est pas un standard JEE
    Pour le reste, essaye de passer d'une application développée avec Hibernate à TopLink, tu as toutes les chances d'avoir utilisé des options spécifiques... EJB3 Entity EST une norme JEE et si on respecte son vocabulaire (et options), l'implémentation physique de la norme est secondaire.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Que choisir : Delphi ou C++ ?
    Par Gwipi dans le forum Débats sur le développement - Le Best Of
    Réponses: 30
    Dernier message: 18/07/2010, 12h43
  2. Que choisir ? Delphi ou Java ?
    Par Jean-Yves dans le forum Débats sur le développement - Le Best Of
    Réponses: 89
    Dernier message: 19/04/2008, 16h40
  3. Réponses: 47
    Dernier message: 04/07/2006, 17h39
  4. Web contre client/serveur que choisir??
    Par silvermoon dans le forum Débats sur le développement - Le Best Of
    Réponses: 41
    Dernier message: 24/01/2004, 16h53
  5. Que choisir ? Visual C++ ou Borland c++ builder ?
    Par ashram dans le forum Débats sur le développement - Le Best Of
    Réponses: 27
    Dernier message: 24/02/2003, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo