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 :

utiliser Criteria pour un JOIN WITH


Sujet :

Hibernate Java

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut utiliser Criteria pour un JOIN WITH
    Bonjour,
    Je cherche comment utiliser Criteria avec JOIN WITH

    Par exemple, on a les tables

    Recette
    • int id_r num
    • String nom
    • int sucreSaleAcide
    • int id_ingredients

    et
    Ingredients
    • int id_i num
    • String nom_ingredient
    • int stock
    • Set Recettes //collection hibernate des liaisons retour

    La requête doit être sur Ingredients.
    et je veux écrire ce qui donnerait en HQL :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT i.nom_ingredient, r.nom
    FROM Ingredients i
    LEFT OUTER JOIN Recette r WITH r.sucreeSaleAcide > :value
    avec :
    En Criteria, ça devrait donner :
    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
    Criteria crit = session.createCriteria(Ingredients.class);	
    //crit.setFetchMode("ingredients", FetchMode.JOIN);
     
    //crit.add(Restrictions.gt("r.sucreeSaleAcide", 2));
     
    crit.createAlias("recettes", "r");
    		//crit.createCriteria("recettes").add(Restrictions.eq("r.sucreeSaleAcide", 2));
     
    crit.add(Restrictions.gt("r.sucreeSaleAcide", 2));
     
    //crit.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
     
    //http://www.developpez.net/forums/showthread.php?t=310869
     
    List list = crit.list();
    Mais évidemment ça marche pas... quelqu'un pourrait me montrer le chemin ?

    merci !

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Quand tu créer ton alias il faut que tu précises:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    crit.createAlias("recettes", "r", Criteria.LEFT_JOIN);

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 75
    Points : 45
    Points
    45
    Par défaut
    Merci, c'était tout bête, mais ça ne figurait pas dans le manuel d'hibernate :p


    http://www.hibernate.org/hib_docs/reference/fr/html/querycriteria.html



    Auriez vous un manuel sur Criteria qui serait plus complet ?

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

Discussions similaires

  1. Utilisation de l'api criteria pour des join
    Par hugo123 dans le forum JPA
    Réponses: 0
    Dernier message: 04/02/2011, 11h46
  2. Utiliser LINQ pour un JOIN entre deux datatables
    Par olibara dans le forum Linq
    Réponses: 6
    Dernier message: 06/07/2010, 16h18
  3. Utiliser hylafax pour envoyer des fax
    Par ggnore dans le forum Applications et environnements graphiques
    Réponses: 2
    Dernier message: 08/07/2004, 21h57
  4. utiliser "if" pour faire deux actions differente
    Par vampyer972 dans le forum C
    Réponses: 2
    Dernier message: 09/05/2004, 10h12
  5. [Débutant] Utilisation de FOP - Register Fonts with FOP
    Par Johnbob dans le forum XML/XSL et SOAP
    Réponses: 4
    Dernier message: 31/01/2004, 00h27

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