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 :

chargement et transfert de graphe complex


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de Hyperion99
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Par défaut chargement et transfert de graphe complex
    Bonjour

    J'utilise Hibernate 3 avec spring sous un serverTomcat.

    J'ai un projet qui contient des graphe d'objet assez complexe, (graphes cyclique, objets qui contiennent potentiellement des liste ou chaque objet de la liste peut éventuellement contenir lui même contenir des listes, ... )

    Je me suis rendu compte que de rendre EAGER les relations OneTMany me posait un gros problème de performance, tant au niveau du chargement du graphe qu'au niveau du temps de transfert...

    En cherchant sur le net j'ai trouvé ces deux tuto écrit respectivement par Par Loïc Frering et Baptiste Meurant pour le 1er et par Bruno Marchesson pour le second

    http://loic-frering.developpez.com/t...ring-tapestry/

    et surtout

    http://bmarchesson.developpez.com/tu...te/chargement/

    Etant relativement débutant , pour ne pas dire débutant tour court, mon regard critique n'est pas forcément le meilleur (d'ailleurs j'ai pas de référence qui me permette de le faire )

    j'aurai donc souhaité avoir l'avis d'experts (et je sais qu'il y en a sur ce site )

    En esperant que ma requette sera entendu, je vous remercie d'avance

    a+

  2. #2
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Effectivement, le chargement EAGER n'est pas du tout adapté à un graphe d'objets complexe et cycliques. Un seule requête peut parfois charger la base de données en entier et charger plusieurs fois certains objets.

    Le chargement LAZY est bien souvent plus adapté.

    Je ne sais pas si j'ai répondu à tes question ?

  3. #3
    Membre averti Avatar de Hyperion99
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Par défaut
    Salut Batiste,

    Disons que tu as confirmé ce que je pensais.

    Mais ma réelle question était plutôt comment résoudre l'accès à ces fameux champs lazy depuis la couche cliente, et plus particulièrement depuis mon modèle de vue.. étant donné que lorsque j'y accède j'ai la fameuse exception LazyInitialisationException

    J'ai lu que l'on pouvais utiliser une sort de cache client.. Mais d'une part je ne sais pas trop comment il faut implémenter ca (si tu as un lien vers un site/tuto qui parle de cela je suis interressé ) et d'autre part je ne sais s'il n'existe pas d'autres solutions ...

  4. #4
    Membre averti Avatar de Hyperion99
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Par défaut
    D'autre part j'aurai aimé avoir un avis d'expert tel que toi (je fais le leche cul ) sur le tuto http://bmarchesson.developpez.com/tu...te/chargement/

    Mais t'inquiète pas je comprend que tu ai d'autre chose a faire ...

  5. #5
    Expert confirmé
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Par défaut
    Citation Envoyé par Hyperion99 Voir le message
    Salut Batiste,

    Disons que tu as confirmé ce que je pensais.

    Mais ma réelle question était plutôt comment résoudre l'accès à ces fameux champs lazy depuis la couche cliente, et plus particulièrement depuis mon modèle de vue.. étant donné que lorsque j'y accède j'ai la fameuse exception LazyInitialisationException

    J'ai lu que l'on pouvais utiliser une sort de cache client.. Mais d'une part je ne sais pas trop comment il faut implémenter ca (si tu as un lien vers un site/tuto qui parle de cela je suis interressé ) et d'autre part je ne sais s'il n'existe pas d'autres solutions ...
    Ça va être difficile de t'aider sans le code et la trace complète de l'exception. Personnellement, les meilleures ressources sur Hibernate que je connaisse sont des livres, tu en trouveras sur la page livres de la rubrique.

    Citation Envoyé par Hyperion99 Voir le message
    D'autre part j'aurai aimé avoir un avis d'expert tel que toi (je fais le leche cul ) sur le tuto http://bmarchesson.developpez.com/tu...te/chargement/
    Il est très bien ce tutoriel. Il explique bien ce que sont chacun des types de chargement, mais ce n'est pas un tutoriel qui se veut exhaustif sur la mise en œuvre.

Discussions similaires

  1. Déssiner un graphe complexe
    Par amine1980 dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 09/01/2014, 13h22
  2. Graph Excel complexe ?
    Par Didier71 dans le forum Excel
    Réponses: 4
    Dernier message: 01/03/2008, 17h18
  3. sqlloader, chargement (un peu) complexe
    Par fguigui dans le forum SQL*Loader
    Réponses: 10
    Dernier message: 21/09/2006, 16h51
  4. sqlloader: chargement complexe
    Par slefevre01 dans le forum SQL*Loader
    Réponses: 3
    Dernier message: 06/10/2005, 11h20
  5. Chargement de graphe de filtres sous DirectShow
    Par PhilCyx dans le forum DirectX
    Réponses: 2
    Dernier message: 06/08/2005, 22h34

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