Developpez.com - Rubrique Java

Le Club des Développeurs et IT Pro

Quelles implémentations JPA (Java Persistence API) utilisez-vous et pourquoi ?

Partagez votre expérience

Le 2019-01-24 19:03:01, par Mickael Baron, Rédacteur
Bonjour,

En 2012, l'équipe Java avait réalisé un sondage concernant le choix des implémentations JPA que nos membres utilisaient : https://www.developpez.net/forums/d1...ez-experience/



Nous pouvons remarquer que l'implémentation Hibernate était largement utilisée suivie de Eclipse Link l'implémentation de référence. Plus précisément, les différentes discussions du sondage ont fait ressortir les points suivants à savoir :

  • Pour Hibernate : sa documentation étoffée, sa présence massive qui font que les gens se tournent vers cette solution à défaut d'une autre ;
  • Pour EclipseLink : sa simplicité.


Nous aimerions donc remettre au goût du jour ce sondage en ajoutant des nouvelles propositions. Profitez-en pour donner les raisons de votre choix en insistant par exemple sur :

  • les avantages et inconvénients des bibliothèques choisies ;
  • la non utilisation d'un ORM basé sur JPA ;
  • seule l'API JPA vous intéresse, peu importe l'implémentation.


Merci de votre contribution

Mickael pour l'équipe Java

Retrouver les meilleurs cours et tutoriels pour tous les aspects liés au stockage avec Java
  Discussion forum
6 commentaires
  • robertledoux
    Membre averti
    Nous utilisons massivement Ebean ORM dans nos projets Java (Desktop ou Web)
  • nadah10
    Candidat au Club
    J'utilise énormément Hibernate pour mes projets web.

    Il procure :
    - Faciliter d'utilisation
    - Management de plusieurs tables
    - Gestion des erreurs simple
    - Reverse engineering rapide et efficace
    - Adaptation dans n'importe quel projet possible
  • CoderInTheDark
    Membre émérite
    J'ai obtenu en BTS d'informatique de gestion en 2002.
    Dans l'enseignement il y avait beaucoup de Merise et de SQL.
    Mais pour l'utilisation dans une application l'enseignement était à minima.

    Je me suis donc tourné vers les API natives en mon code, en PHP, VB6, C/C++, et Perl.

    Après je suis passé à Java JDBC à partir de 2004.
    Mais quand il a fallu travailler avec des schémas complexe et des objets composés et surtout avec l'héritage ça été compliqué.
    J'en avais assez d'écrire du code JDBC pour les objets composés surtout, et de devoir tout réécrire en cas de changement de schéma

    J'ai cherché, et au début j'ai pensé aux bases objets, mais je n'aimais pas cette solution car trop à la marge, trop fermée.
    je suis tombé sur un article sur développez qui expliquait comment stocker ces objet dans une bases relationnelle
    J'avais même commencé ma solution, j'avais adopté la colonne discriminante,.., et j'indiquais le type dans le titre de colonne, j'utilisais la reflexivité à fond.
    Je ne regrette pas car ça m'a aidé à comprendre Hibernate, mais à partir de ce moment j'ai jeté ma solution perso

    Car Hibernate a été la délivrance, par seulement pour l'héritage mais aussi pour mes objets composés, car la taille de la composition change et Hibernate gère ça à ma place.

    J'utilise surtout JPA/Hibernate.
    Mais aussi JDBC pour les cas très simples.

    Pourquoi je l'utilise.
    Je l'ai appris et c'était une bonne idée, car en entreprise c'est très demandé.
    Passer de Hibernate pour Swing et JPA/Hibernate pour JEE a été naturelle.
    Je rencontre très rarement autre chose MyBatis et JDBC

    Et j'ai fait du Synfony avec Doctrine et j'étais comme un poisson dans l'eau grace à mon expérience Hibernate
  • debutantlinux
    Futur Membre du Club
    Je préfère utiliser Hibernate parce que c'est l’implémentation la plus simple de JPA de plus ça fait partie du programme de ma formation académique.
  • Gugelhupf
    Modérateur
    Hibernate est un choix populaire lorsque l'on cherche une implémentation de JPA, voir même la solution par défaut proposée dans les dépendances de certains projets (ex: Spring Boot) même s'il est possible de l'exclure pour choisir une autre implémentation.
  • Mickael Baron
    Rédacteur
    Seulement 4 personnes ont choisi EclipseLink, des motivations ?

    Mickael