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

JDBC Java Discussion :

ResultSet scrollable et JTable


Sujet :

JDBC Java

Vue hybride

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 ResultSet scrollable et JTable
    Bonjour à tous !

    Mon application doit être capable de rapatrier un certain nombre de résultat dans une JTable pour que l'utilisateur puisse sélectionner l'enregistrement qui l'intéresse.

    Au tout début j'utilisais Hibernate mais les performances ne m'ont pas satisfait donc je suis passé par du JDBC pur. Je met environ 2 secondes à afficher 50 000 enregistrements (je rapatrie 4-5 champs à chaque fois) ce qui est encore trop pour mon employeur.
    Le truc c'est qu'il compare avec un vieux logiciel qu'il a qui lui est capable d'afficher un certain nombre d'enregistrement quasi instantanément et je me suis demandé comment ce logiciel pouvait faire.

    Est-ce qu'il est possible à votre avis de naviguer dans un ResultSet scrollableà partir d'une JTable ?
    La JTable n'étant qu'une vue des données, comment je pourrais intégrer ce ResultSet dans mon "TableModel" ?

    Je vous remercie d'avance pour vos éclaircissements

  2. #2
    Membre expérimenté Avatar de Torg666
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2008
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2008
    Messages : 230
    Par défaut
    2 secondes pour sortir 50k enregistrements dans 1 Jtable c'est très raisonnable si tu veux mon avis.
    Faut voir aussi a comparer ce qui est comparable. Son vieux logiciel accede a un base de donnees relationnelles? Il sort sa liste en console MS-Dos? etc...

    Difficile de te dire pourquoi il va plus vite sans savoir ce que fait ce vieux logiciel

  3. #3
    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
    Citation Envoyé par Torg666 Voir le message
    2 secondes pour sortir 50k enregistrements dans 1 Jtable c'est très raisonnable si tu veux mon avis.
    Faut voir aussi a comparer ce qui est comparable. Son vieux logiciel accede a un base de donnees relationnelles? Il sort sa liste en console MS-Dos? etc...

    Difficile de te dire pourquoi il va plus vite sans savoir ce que fait ce vieux logiciel
    Très raisonnable, c'est ce que je me dis aussi.
    Mais c'est difficile de faire comprendre à quelqu'un qui n'y connait rien qu'un logiciel récent sur une bécanne plus récente va mettre plus de temps à afficher les mêmes informations qu'un logiciel plus vieux.

    Mais ça m'intrigue quand même cette histoire

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Le logiciel plus vieux, il ne mettait pas toutes les données dans un JTable.

    Il enregistrait toutes les données en mémoire avec une forme d'accès simple (je pense à un tableau par exemple), et à l'affichage, il n'affichait que ce qui pouvait l'être.

    Si tu veux améliorer tes performances, commence par ne pas mettre 50 000 trucs dans un JTable, et n'y mets que ce qui a besoin d'être affiché à la fois (c'est plus difficile, certes.)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    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
    Citation Envoyé par thelvin Voir le message
    Si tu veux améliorer tes performances, commence par ne pas mettre 50 000 trucs dans un JTable, et n'y mets que ce qui a besoin d'être affiché à la fois (c'est plus difficile, certes.)
    Certes

Discussions similaires

  1. remplir Jtable avec plusieurs Resultset
    Par stratocasters dans le forum Composants
    Réponses: 9
    Dernier message: 05/11/2009, 22h35
  2. Jtable avec model + Dao + resultSet
    Par Raphael1980 dans le forum Composants
    Réponses: 7
    Dernier message: 01/03/2009, 10h26
  3. Réponses: 1
    Dernier message: 14/01/2009, 16h58
  4. Problème :ResultSet dans 1 JTable swing
    Par jer190 dans le forum JDBC
    Réponses: 3
    Dernier message: 18/07/2008, 13h42
  5. Onglet contenant une JTable scrollable et un panel
    Par xtaZy dans le forum Composants
    Réponses: 3
    Dernier message: 06/03/2007, 20h40

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