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

Spring Java Discussion :

probleme avec getHibernateTemplate.find() [Data]


Sujet :

Spring Java

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 17
    Points : 17
    Points
    17
    Par défaut probleme avec getHibernateTemplate.find()
    Salut a tous,
    Je suis e cours de developpement d'une application web utilisant Spring.
    Mon probleme est le suivant: j'ai une relation de manytomany entre 2 classes(table) A et B, ce qui a cree une table intermediare contenant les ids des entites de 2 tables comme des cles etrangeres .
    J'aime savoir comment je peux selctionner les les entites de la table B en fonction de l'Id de l'entite de la table A avec la methode getHibernateTemplate.find(), quel est la requete exactement ?
    Merci d'avance .

  2. #2
    zag
    zag est déconnecté
    Membre régulier

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 58
    Points : 75
    Points
    75
    Par défaut
    slt,

    tu peux recuperer ton A par rapport a l'Id, puis la collection de B associée, cad :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    A a= (A)getHibernateTemplate().load(A.class,id);
    List lesB = a.getLesB();
    en faisant attention au lazy sur le getB()...

    ou récupérer tes B par un findByCriteria
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    DetachedCriteria detachedCriteria = DetachedCriteria.forClass(B.class);
    detachedCriteria.createcriteria("lesA").add(Restrictions.eq("id",id));
    List lesB = getHibernateTemplate().findByCriteria(detachedCriteria);
    ou encore avec un find
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    List lesB = getHibernateTemplate().find("select b from B b, A a where a in elements(b.lesA) and a.id="+id);
    je pense qu'il s'agit la des solutions les plus simples en passant les HibernateTemplate...

    a+

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 17
    Points : 17
    Points
    17
    Par défaut
    Merci bien pour l'aide zag
    Vive developpez.com
    @+

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

Discussions similaires

  1. Probleme avec "find" pour une map
    Par Charlock dans le forum Visual C++
    Réponses: 8
    Dernier message: 22/05/2008, 12h38
  2. probleme avec la fonction std::find
    Par APoLLoN1234 dans le forum SL & STL
    Réponses: 10
    Dernier message: 25/12/2007, 11h23
  3. Réponses: 2
    Dernier message: 29/11/2007, 15h25
  4. [ADO] Probleme avec Find
    Par Galaad dans le forum Access
    Réponses: 3
    Dernier message: 06/01/2006, 11h24
  5. Probleme de perf avec File::Find::name;
    Par Ludo167 dans le forum Modules
    Réponses: 6
    Dernier message: 14/07/2004, 11h31

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