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 :

Arbre : récupérer des donnés à partir d'une feuille


Sujet :

Hibernate Java

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2009
    Messages : 10
    Points : 12
    Points
    12
    Par défaut Arbre : récupérer des donnés à partir d'une feuille
    Bonjour,
    Je débute avec Hibernate et HQL et j'aurrai besoin d'un peu d'aide. =)

    Voilà je souhaite récupérer toutes les données d'un arbre à partir d'une feuille et je ne sais pas trop comment mis prendre.

    Est ce que quelqu'un serait me guider, voir me donner des pistes de travail MERCI.

    Je pensais faire quelque chose dans ce sens :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String g = "groupe_6"; //feuille de départ
    Session session = HibernateUtil.currentSession();
    List list = session.createQuery("from Groups where parent_groups =:"+g).list();
    Iterator it = list.iterator();
    while(it.hasNext()){
    	g = (Groups) it.next();
           //tant qu'il y a des fils, je fais le même travail en modifiant le nom du parent dans la requête...
    	logger.info(g.getIdGroup());
    }
    HibernateUtil.closeSession();
    C'est très approximatif, creu, vide et surement plein de fautes je sais... mais je calle un peu... ;-(

    Par la même occaion si quelqu'un à un bon tutoriel sur HQL ça m'aiderai, car pour les reqêtes basiques j'ai trouvé mais là je croince pour les requêtes plus importante.

    Merci d'avance

  2. #2
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Je débute aussi et la réponse m'intéresserait...
    Personne pour nous aiguiller???
    Merci

  3. #3
    Membre chevronné
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Points : 1 806
    Points
    1 806
    Par défaut
    Il faudrait surtout savoir comment sont mappés les objets. S'ils sont mappés avec le père et la collection d'enfants, que rien n'est lazy, alors charger n'importe quel objet de l'arbre charge en fait tout l'arbre (ce qui peut poser de sérieux problèmes de performance par ailleurs).

    Sinon, tu peux chercher la racine (ou les racines), et aller ensuite chercher "à la main" tous les enfants.

  4. #4
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 7
    Points : 7
    Points
    7
    Par défaut comment créer la liste??
    Ayant que les pères de mappé, j'ai essayé de rechercher "à la main" tous les enfants mais je n'y arrive pas toutes mes tentatives sont tombées à l'eau je débute est ce que quelqu'un pourrait m'aider please... Merci

    A partir du groupe de départ (stocké dans parent) j'arrive à avoir la liste des enfants directe, et pour chaque élément de cette liste j'aimerai recommencer mais comment faire, pour parcourir la liste et la modifier en même temps??

    Voici mon code actuel que récupère que les enfants du groupe parent.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Session session = HibernateUtil.currentSession();
    Query q = session.createQuery("from Groups where parent_groups = ?");
    q.setString(0, parent);
    List gpe = q.list();
    Iterator it = gpe.iterator();
    while(it.hasNext()){
    	g = (Groups) it.next();
    	logger.info(g.getIdGroup());
    }
    HibernateUtil.closeSession();
    Merci

  5. #5
    Membre chevronné
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Points : 1 806
    Points
    1 806
    Par défaut
    Tu pourrais poster aussi ton (tes) mapping(s) et la partie idoine de la (des) classe de(s) l'objet(s) ?

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/06/2011, 22h03
  2. Récupérer des données à partir d'une BDD postgresql
    Par chimouch dans le forum Général Java
    Réponses: 1
    Dernier message: 30/03/2011, 18h21
  3. Réponses: 7
    Dernier message: 27/09/2010, 08h21
  4. Récupérer des données à partir d'une URL ?
    Par Bebert71 dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 19/02/2009, 12h53
  5. Réponses: 1
    Dernier message: 15/09/2008, 10h21

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