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

Java EE Discussion :

select sur plusieurs entity [EJB3 Entity]


Sujet :

Java EE

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par défaut select sur plusieurs entity
    Bonjour a tous,

    je souhaitrai pouvoir faire un select sur plusieurs tables style a ceci
    et j'aimerai savoir si je dois m'orienté vers l'héritage ou si je suis sur le bon chemin avec la requete ci dessous Merci d'avance pour votre aide


    j'ai une table Pays avec une clef primaire et un champ varchar
    ID pays
    1 France
    2 Pays-Bas

    j'ai une autre table Ville
    id clef primaire
    ville Varchar
    cp varchar
    idPays clef étrangére liée a la table pays
    ID ville cp idPays
    1 Paris 1000 1

    en sql je tape ceci
    select v.ville, v.cp, p.pays from ville as v, pays as p
    where v.idPays = pays.id

    j'étudie les ejb3 depuis peux de temps et je souhaite pouvoir faire des select sur plusieurs entité et avoir un resultat sur un meme object
    si une personne peux m'aider cela me ferai bien plaisir.


    EntityManagerFactory emf = Persistence.createEntityManagerFactory("netbrain-ejbPU");
    EntityManager em = emf.createEntityManager();
    String texteRequête = "SELECT Adr.Rue, Adr.Bp, vil.Ville,p. FROM Adresse AS Adr, Ville AS Vil,Pays AS P WHERE Adr.idville = Vil.id and Vil.idpays = p.id ";

    Query requete = em.createQuery(texteRequête);
    List<Adressehybrid> resultat = requete.getResultList();
    for (Adressehybrid unePhoto : resultat) {
    System.out.println("Identification : " + unePhoto.getRue().toString());

    }


    je vous remercie d'avance pour votre aide.
    je cherche un lien ou une réponse pouvant me mettre sur la bonne piste pouvez vous me donnez un coup de pouce sur ce point je vous remercie d'avance.

  2. #2
    Membre Expert Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Par défaut LAZY Loading
    Bonjour,

    Pour ton problème vu que personne ne répond une piste....

    Quand tu crées tes objets POJO genre JPA ( TopLink ou hibernate ), tu dois créé des liaisons entre tes objets.

    Pour ma part, comme je suis pratique, je les crée avec Oracle et je pompe le résultat avec Netbeans. Il me crée tous les liens, bien entendu les séquences sont mauvaises et les POJO doivent être retravaillés, mais les grandes lignes sont là. ( onToMany, ManyToMany etc .... )

    Il te suffit ensuite de derterminer suivant tes champs si tu charge tout de suite ou après ( Lazy loading or Eager ). Dans le cadre des collections notamment il faut utiliser le subterfuge monobjet.maCollection.size().

    C'est un truc que j'ai découvert en essayant de comprendre les relations ManyTOMany

    http://www.oracle.com/technology/pro...notations.html

    Un exemple tu cherches LAZY dans la page et EAGER ( fetch )

    Ce qu'ils ne disent pas c'est que pour charger dans une couche supérieure la totalité de la collection, dans le cas de LAZY, tu dois faire .size() comme vu précedemment.

    Dans mon archi, J'ai des POJO's -> couche Service ( la partie métier ) -> des EJB's ( qui appellent les services ) . Ce qui me permet de monter des tests unitaires sur mes objets métiers. Donc de mieux comprendre les POJO's ..

    olivier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 54
    Par défaut
    ah merci pour les pistes de réponse

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

Discussions similaires

  1. [SQL Access] SELECT sur plusieurs Tables et Composer Champs
    Par Giuseppe dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 07/11/2005, 14h00
  2. SELECT sur plusieurs Tables et Composer Champs
    Par Giuseppe dans le forum Langage SQL
    Réponses: 4
    Dernier message: 07/11/2005, 12h27
  3. un seul SELECT sur plusieurs tables ?
    Par deloo dans le forum Requêtes
    Réponses: 2
    Dernier message: 15/09/2005, 12h57
  4. [XSLT]select sur plusieur documents XML
    Par jesus144 dans le forum XMLRAD
    Réponses: 3
    Dernier message: 15/06/2005, 10h56
  5. select sur plusieurs table, question sur jointure
    Par Schulman dans le forum Langage SQL
    Réponses: 7
    Dernier message: 03/09/2004, 13h54

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