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

Hibernate Java Discussion :

Quel impact sur Hibernate ?


Sujet :

Hibernate Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Quel impact sur Hibernate ?
    Bonjour,

    Je m'interesse aux EJB 3.0 mais les sources d'informations different.

    1.Y a t-il toujours une utilitee a hibernate malgre les EJB3? Si oui laquelle?

    2.Utiliser les EJB3 pour un projet assez consequent est il preferable a rester sur le EJB 2/Xdoclet + Hibernate?

  2. #2
    Membre confirmé Avatar de Claythest
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    558
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 558
    Points : 554
    Points
    554
    Par défaut
    Les EJB3 utilisent en fait hibernate... C'est intégré dedans

    Tu n'as donc aucun intérêt à utiliser les EJB2, sauf si tu aimes te compliquer la vie

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    d'accord. Je connais vraiment rien en EJB 3 mais par exemple pour mes ejb entity il gerent donc la persistance.

    on a egalement un systeme qui recupere nos tables des bases de donnees pour generer les fichiers classes? Quel IDE utiliser pour disposer au mieux de ca?

    merci

  4. #4
    Membre habitué Avatar de xv-mnt
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2005
    Messages : 142
    Points : 178
    Points
    178
    Par défaut
    Les EJB3 utilisent en fait hibernate... C'est intégré dedans
    C'est plutôt le contraire.
    Hibernate 3 respecte les spécifications EJB3, mais Hibernate ajoute des fonctionnalités non spécifiées dans EJB3 (DeleteOrphans par exemple).
    Tu peux donc utiliser Hibernate pour faire des EJB3, pour autant que tu restes dans le cadre des spécifications.
    L'avantage, c'est qu'il est gratuit.
    Tout le monde savait que c'était impossible à faire. Puis un jour quelqu'un est arrivé qui ne le savait pas, et il le fit (Winston Churchill)

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    D'accord mais moi ce qui m'interesse c'est un rapport utilite rapidite.

    Si je veux deployer plus efficacement ai je preference a integrer un hibernate ou il vaut mieux que je restre sur les ejb 3 sans hib?

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 79
    Points : 89
    Points
    89
    Par défaut
    Si tu veux rester dans la norme J2EE de base, vaut mieux rester en EJB3 pur, certes il est jeune, par rapport a Hibernate, mais au moins les nouvelles avancées vont ce faire sur la base de EJB3.

    wait and see

  7. #7
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Je vois plus l'intérêt d'Hibernate lorsque tu utilises EJB 3.0, les performances sont 1000 fois meilleures avec EJB c'est vraiment impressionant

    Une pagination d une page web avec 20'000 objets dans la base se fait en moins d une seconde (avec bien entendu une limitte de max obj et d un index)

  8. #8
    Membre actif Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Points : 241
    Points
    241
    Par défaut
    Hmmm? EJB3 EntityManager 1.000x plus rapide que Hibernate? Avec quoi comme provider? Toplink?
    Car il n'y a aucune corrélation là... De pus les avantages d'Hibernate vs EJB3 sont nombreux:
    1. List (ordonnée)
    2. Filtre
    3. Cache
    4. ...


    Alex

  9. #9
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    En utilisant toplink j ai développé deux types d'application

    -une utilisant hibernate
    -une utilisant JPA + EJB 3.0

    la différence est vraiment exceptionel

    Pour du caching avec toplink et EJB 3.0 il faut passer par des services liées au serveur ...

    Hibernate est vraiment loin derrière ... (même sans cache dans les deux cas)

  10. #10
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    3 274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 3 274
    Points : 4 141
    Points
    4 141
    Par défaut
    Hibernate est bien une implémentation des EJB3, n'est-ce pas ?
    Dans ce cas, pourquoi y aurait il autant de différences de performances entre une application avec Hibernate pur et une avec EJB3 (et Hibernate comme implémentation).
    Ca ne semble pas très logique, en tout cas de mon point de vue.

  11. #11
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Citation Envoyé par fr1man
    Hibernate est bien une implémentation des EJB3, n'est-ce pas ?
    Dans ce cas, pourquoi y aurait il autant de différences de performances entre une application avec Hibernate pur et une avec EJB3 (et Hibernate comme implémentation).
    Ca ne semble pas très logique, en tout cas de mon point de vue.

    Je comprenais pas non plus, jusqu'à ce que je test pour voir la diff

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 79
    Points : 89
    Points
    89
    Par défaut
    A mon avis ce n'est pas pour rien que EJB3 est le fruit d'un travaille post hibernate.

    Surtout que les serveurs d'application tel que SAS, sont optimisé pour.

    EJB3 a fortement évolué, et je peux dire qu'il se suffit à lui même....

    @ *alexandre* : auriez vous dans vos tests utiliser profiler, ou tout autre testeur de performance ? si oui auriez vous des chiffres concret ? merci
    sinon, pourriez vous le faire ?

    merci

  13. #13
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    Non j ai jamais utilisé de profiler que me conseilles-tu ?

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 79
    Points : 89
    Points
    89
    Par défaut
    je ne peux pas vraiment conseiller, puisque n'ayant vraiment utilise que celui de netbeans, si il y en a d'autre je m'en excuse..mais un me suffit.

    je pense que ce serait vraiment très intéressant de voir les performances concrètement.

  15. #15
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Points : 2 336
    Points
    2 336
    Par défaut
    J ai refait deux applications web de test avec hibernate + click et une pour ejb + click

    les performances sont en fait similaires, avec même un petit avantage pour charger la dernière page des données pour hibernate !

    c est étrange dans une application que j avais testé utilisant JSF + Spring + Hibernate les performances étaient décevantes


    Pour le profiler j obtiens "Target `profile-j2ee' does not exist in this project.
    BUILD FAILED (total time: 0 seconds)

    lorsque je tente de monitorer l application (le projet que j ai créer pour hibernate est un simple projet web)

  16. #16
    Membre actif Avatar de a.snaps
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 209
    Points : 241
    Points
    241
    Par défaut
    JPA est une spécification qui est implémenté par différent acteur dont Hibernate et TopLink, parmis d'autre! Pour utilisé JPA il faut toujours choisir un provider, soit une implémentation de la spécification.
    Pour faire des tests de perfs, il faudrais mettre au point des microbenchmarks représentatifs, puis faire tourner le tout en changant uniquement le provider.
    Malheureusement à cela se rajoute de bien comprendre les implémentations testées et leur configuration par défaut.

    Mais Hibernate plus lent que JPA, cela ne veut rien dire!

    Alex

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2003
    Messages : 79
    Points : 89
    Points
    89
    Par défaut
    Lors du lancement de Profile sur le projet, il dit qu'il doit modifier celui-ci pour fonctionner. Bien sur ici il faut accepter, sinon il ne fera pas partie du projet.

    La démonstration de Profile est intéressante sur le site de NetBeans.

  18. #18
    Expert éminent sénior


    Profil pro
    Inscrit en
    Mai 2003
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 3 240
    Points : 11 101
    Points
    11 101
    Par défaut
    Citation Envoyé par martel
    Lors du lancement de Profile sur le projet, il dit qu'il doit modifier celui-ci pour fonctionner. Bien sur ici il faut accepter, sinon il ne fera pas partie du projet.

    La démonstration de Profile est intéressante sur le site de NetBeans.
    Et je vous invite à vous rendre aux Sun Tech Days. Il y aura entre autre une démo du profileur NetBeans le lundi après-midi.

    Vincent
    Vincent Brabant

    Ne pas me contacter par MP ni par mail pour des questions techniques. Ma liste d'amis restera vide.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  19. #19
    Expert éminent sénior


    Profil pro
    Inscrit en
    Mai 2003
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 3 240
    Points : 11 101
    Points
    11 101
    Par défaut
    Citation Envoyé par a.snaps
    JPA est une spécification qui est implémenté par différent acteur dont Hibernate et TopLink, parmis d'autre! Pour utiliser JPA il faut toujours choisir un provider, soit une implémentation de la spécification.
    Pour faire des tests de perfs, il faudrais mettre au point des microbenchmarks représentatifs, puis faire tourner le tout en changant uniquement le provider.
    Malheureusement à cela se rajoute de bien comprendre les implémentations testées et leur configuration par défaut.

    Mais Hibernate plus lent que JPA, cela ne veut rien dire!

    Alex
    +1
    Vincent Brabant

    Ne pas me contacter par MP ni par mail pour des questions techniques. Ma liste d'amis restera vide.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  20. #20
    Expert éminent sénior


    Profil pro
    Inscrit en
    Mai 2003
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 3 240
    Points : 11 101
    Points
    11 101
    Par défaut
    Citation Envoyé par Ousta1
    d'accord. Je connais vraiment rien en EJB 3 mais par exemple pour mes ejb entity il gerent donc la persistance.

    on a egalement un systeme qui recupere nos tables des bases de donnees pour generer les fichiers classes? Quel IDE utiliser pour disposer au mieux de ca?

    merci
    Avec NetBeans 5.5, tu peux lui demander de générer tes Entity Beans à partir des tables de ta base de données.
    Vincent Brabant

    Ne pas me contacter par MP ni par mail pour des questions techniques. Ma liste d'amis restera vide.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/01/2014, 15h28
  2. Quel livre sur Hibernate pour débuter
    Par vinou94400 dans le forum Hibernate
    Réponses: 3
    Dernier message: 09/09/2011, 22h40
  3. build_opener/open : quel impact sur les serveurs ?
    Par ndraptor dans le forum Réseau/Web
    Réponses: 2
    Dernier message: 06/04/2011, 10h08
  4. Réponses: 11
    Dernier message: 02/06/2008, 13h03
  5. Réponses: 10
    Dernier message: 20/11/2007, 09h01

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