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 :

Débutant : Requete en Criteria


Sujet :

Hibernate Java

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2003
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 129
    Par défaut Débutant : Requete en Criteria
    Bonjour, je debute avec Criteria mais j'ai du mal

    Voila, j'ai 3 tables
    Personne
    Adresse
    Voiture

    La Requete SQL que je veux est ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Select Personne.nom, Personne.prenom from Personne
    inner join Adresse on (Personne.id=Adresse.PersonneId)
    inner join Voiture on (Personne.id=Voiture.PersonneId)
    WHERE
    Adresse.ville = 'Paris'
    AND
    Voiture.marque = 'PEUGEOT'
    Jusque la ça va ... mais où ça se gate, c'est en Criteria ...

    Je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Criteria criteria = Session.createCriteria(Personne.class)
    Liste resultat  criteria.createCriteria("adresse")
      .add(Restrictions.eq("ville", "Paris")
        .createCriteria("voiture")
        .add(Restrictions.eq("marque", "Peugeot").list();
    Et là Hibernate me dit qu'il ne trouve pas la propriété "voiture" dans "ville" ... (logique ...)

    comment faire ce type de jointure ?

  2. #2
    Membre émérite Avatar de Gardyen
    Homme Profil pro
    Bio informaticien
    Inscrit en
    Août 2005
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bio informaticien

    Informations forums :
    Inscription : Août 2005
    Messages : 637
    Par défaut
    il te suffit d'appliquer les restrictions et les createCriteria sur la bonne Criteria

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Criteria criteria = Session.createCriteria(Personne.class);
    criteria.createCriteria("adresse")
        .add(Restrictions.eq("ville", "Paris");
    criteria.createCriteria("voiture")
        .add(Restrictions.eq("marque", "Peugeot");
    Liste resultat = criteria.list();

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2003
    Messages
    129
    Détails du profil
    Informations forums :
    Inscription : Avril 2003
    Messages : 129
    Par défaut
    Merci

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

Discussions similaires

  1. [Débutant] Requete UPDATE en VBA
    Par 1tsiMat dans le forum Requêtes et SQL.
    Réponses: 22
    Dernier message: 28/06/2006, 11h19
  2. [Débutante]requete pour lister des fichiers?
    Par bouba83 dans le forum Access
    Réponses: 8
    Dernier message: 18/05/2006, 16h58
  3. Débutant: Requetes de correspondances
    Par banker dans le forum Access
    Réponses: 1
    Dernier message: 31/01/2006, 18h05
  4. [Débutant] Requete multi-bases
    Par DiGueDao dans le forum SQL
    Réponses: 3
    Dernier message: 28/08/2005, 19h19
  5. [Débutant] requete entre plusieurs tables
    Par xufux dans le forum Langage SQL
    Réponses: 2
    Dernier message: 10/08/2005, 14h00

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