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 :

Problème de performance


Sujet :

Hibernate Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Julien Bodin
    Homme Profil pro
    Devops
    Inscrit en
    Février 2009
    Messages
    474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

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

    Informations forums :
    Inscription : Février 2009
    Messages : 474
    Par défaut Problème de performance
    Bonjour à tous !

    J'ai un gros souci de performance avec Hibernate.
    Pour vous situer un peu le contexte, je dois permettre à un utilisateur de sélectionner un certain nombre de code postaux dans une JTable.

    Dans un premier temps je n'avais qu'une seule colonne "code postal" avec juste le numéro du code postal et ça allait très bien niveau performances.
    Mais à la réflexion je trouve ce système assez peu pratique pour l'utilisateur puisqu'il ne manipule que des code postaux et qu'il n'a pas le nom des communes avec.
    J'ai donc créé une nouvelle table "villes" dans ma base avec toutes les villes des départements gérés par l'application, avec une clé étrangère vers le code postal.
    Et c'est là que les performances chutent. La fenêtre met 5s-6s pour s'afficher, ce qui pourrait presque le faire en fait, le souci étant que le scrolling est extrêmement lent et franchement énervant à utiliser, ce qui est compréhensible d'ailleurs puisque la jtable ne récupère que les données qu'elle doit afficher en fonction de la position de la barre de scroll (si besoin) ce qui démarre le lazy-loading.
    Si je désactive le lazy-loading j'ai un scroll bien fluide mais là j'explose les temps de chargement.
    Si je passe en fetch="join" j'explose les temps de chargement et en plus j'ai 10 fois les mêmes enregistrement dans ma JTable (produit cartésien je suppose).

    Heureusement que je n'ai que 200 code postaux et 2000 communes...

    Comment pourrai-je faire pour optimiser tout cela ?

    Je vous met le mapping d'origine de mes deux classes (CodePostal et Ville) et un petit screenshot pour illustrer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <class name="CodePostal">
    	  <id name="code">
    	  	<generator class="assigned"></generator>
    	  </id>
     
    	  <set name="villes" inverse="true">
    	  	<key column="cp"></key>
    	  	<one-to-many class="Ville"/>
    	  </set>
      </class>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <class name="Ville">
      <id name="id">
      	<generator class="native"></generator>
      </id>
     
      <property name="nom" type="string" column="ville"></property>
     
      <many-to-one name="cp" column="cp"></many-to-one>
      </class>
    Je vous remercie d'avance pour votre aide !
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de performance avec LEFT OUTER JOIN
    Par jgfa9 dans le forum Requêtes
    Réponses: 6
    Dernier message: 17/07/2005, 13h17
  2. [jeu]problème de performance d'un algo
    Par le Daoud dans le forum Algorithmes et structures de données
    Réponses: 12
    Dernier message: 30/05/2005, 16h07
  3. [C#] Probléme de performance avec IsDbNull
    Par jab dans le forum Windows Forms
    Réponses: 8
    Dernier message: 04/04/2005, 11h39
  4. [oracle 9i][Workbench]Problème de performance
    Par nuke_y dans le forum Oracle
    Réponses: 6
    Dernier message: 03/02/2005, 17h38
  5. [ POSTGRESQL ] Problème de performance
    Par Djouls64 dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 26/05/2003, 16h18

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