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 :

Remplir un arbre a partir d'une base de données


Sujet :

JDBC Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2013
    Messages : 18
    Points : 21
    Points
    21
    Par défaut Remplir un arbre a partir d'une base de données
    je suis en train d’implémenter un petit programme jave qui remplit un arbre depuis une base de données et affiche les informations ((nom----prénom avoir les même noms))

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    System.out.print("entre ur nom :");
      String str = sc.nextLine();
     Statement st = conn.createStatement();
     String SQL="select* from Table  where nom='" +str+"'";
     ResultSet rs = st.executeQuery(SQL);
     root.setData("nom");
     while( rs.next() ) {
           Node node=new Node(null);
            node.setData(rs.getString("prenom"));
            root.fils=node;
     }
    while(root!=null) {
         System.out.println(root.getData().toString()+"|");
       root=root.fils;
    }

  2. #2
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

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

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Points : 7 163
    Points
    7 163
    Par défaut
    Pas de question, pas de réponse.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Juin 2013
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2013
    Messages : 18
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par dinobogan Voir le message
    Pas de question, pas de réponse.
    le question c' est comment je remplis un arbre à partir de la base de données infos

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Si tu dois remplir un arbre à partir d'une base de données, c'est que tu as une table (ou plusieurs) dans laquelle les données sont stockées et qu'il y a des informations qui permettent d'en faire un arbre : soit les enregistrements connaissent leur parent, soit ils connaissent leurs enfants. Le premier cas étant le plus simple, et probablement le plus courant, donc avec un champ qui constitue une clef étrangère vers la table elle-même. A partir de là, un moyen simple, pour commencer, et de mettre en place une méthode récursive :

    Code pseudo code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    lireNoeuds(noeudparent, id du parent) {
        liste des fils = requête pour obtenir les fils du parent passé en argument (soit tous les enregistrements qui ont pour clef étrangère prévue la valeur "id du parent"
        pour chaque enregistrement de la liste
                 créer un noeud correspondant à l'enregistrement et l'ajouter à noeudparent
                 lireNoeuds(noeud, id de enregistrement)    
        fin pour
    }

    La condition d'arrêt de la récursivité est implicite : on ne fait d'appel récursif que sur des enregistrements obtenus. Si on n'en obtient aucun (pas d'enfants), alors pas d'appel récursif.

    pour la (ou les) racine(s), il faut prévoir que l'id du parent sera null par exemple, et qu'on passe un noeud racine spécifique qui n'aura pas d'enregistrement associé (on peut toujours ensuite le couper selon ce qu'on veut (un arbre mono-racine, ou multi-racine le cas échéant).

    Pour l'aspect technique, il n'y a rien de spécifique à la notion d'arbre : c'est du JDBC avec des requêtes SQL.

Discussions similaires

  1. Réponses: 0
    Dernier message: 04/05/2015, 12h42
  2. Réponses: 1
    Dernier message: 18/02/2015, 14h52
  3. Remplir une fiche automatiquement à partir d'une base de données.
    Par cel1205 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 28/07/2010, 11h44
  4. remplir un Array Gridà partir d'une base de données
    Par ASPAK dans le forum GWT et Vaadin
    Réponses: 1
    Dernier message: 17/03/2009, 21h18
  5. Remplir jtable a partir d'une base de donnée mysql
    Par chris81 dans le forum Composants
    Réponses: 3
    Dernier message: 26/04/2007, 14h09

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