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

JPA Java Discussion :

EJB3 : update sur un ManyToMany


Sujet :

JPA Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Par défaut EJB3 : update sur un ManyToMany
    Bonjour,

    Etant débutant dans le domaine de la persistance en java, je me suis fait un petit tutoriel avec une base de donnée mysql, en m'aidant de différentes sources sur internet.
    Mais je me retrouve bloqué actuellement sur la relation ManyToMany.

    J'ai dans mon projet perso une relation ManyToMany :
    Actor<-->Activity

    Mappé de la manière suivante :
    Actor :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
        @ManyToMany(
                targetEntity=fr.project.one.be.model.Activity.class,
                cascade={CascadeType.PERSIST, CascadeType.MERGE, CascadeType.REMOVE},
                fetch=FetchType.EAGER
            )
            @JoinTable(
                name="actor_activity",
                joinColumns=@JoinColumn(name="actor_id"),
                inverseJoinColumns=@JoinColumn(name="activity_id")
            )
         public Set<Activity> activity;
    Activity :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
         @ManyToMany(
                cascade = {CascadeType.PERSIST, CascadeType.MERGE},
                fetch=FetchType.EAGER,
                mappedBy = "activity",
                targetEntity = fr.project.one.be.model.Actor.class
        )
        private Set<Actor> actor;
    Je voudrais donc savoir comment je pouvais faire un update simple de la liste des activity d'un actor. (Je passe la liste des activity d'un actor à l'aide d'un select multiple sur ma jsp).
    Existe-t-il une manière simple de le faire ?
    ou alors doit-on faire des remove/add au cas par cas ?

    En vous remerciant de votre aide par avance.
    Fred

  2. #2
    Membre éclairé
    Inscrit en
    Mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2008
    Messages : 254
    Par défaut Reponse
    tu n'as pas besoin de faire remove/add ...;

    en effet, si tu as une liste des activités d'un actor, donc tu fait appel juste à la methode setter de ta classe actor.setActivity(taCollection), sachant que tu dois ouvrir une transaction apres de faire setActivity...

    à ce moment la, jpa va cherger dans la memoire est ce qu'il y a des objets ayant les ids de la collections, chaque fois qu'il trouve un objet il fait update "automatiquement" sinon il va creer cet objet.

    j'espère que tu as compris un peu.

  3. #3
    Membre éclairé
    Inscrit en
    Mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2008
    Messages : 254
    Par défaut Autre chose
    en cas des manytmany on aura une classe d'association, cette derniere contient la cle de actor et celle de activity plus autres champs,

  4. #4
    Membre éclairé
    Inscrit en
    Mars 2008
    Messages
    254
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2008
    Messages : 254
    Par défaut Remarque
    en cas des manytmany on aura une classe d'association, cette derniere contient la cle de actor et celle de activity plus autres champs,

  5. #5
    Membre averti
    Inscrit en
    Avril 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 13
    Par défaut
    Merci beaucoup pour l'explication.
    Ca marche nikel.

Discussions similaires

  1. [Debutant] faire un update sur tout une table
    Par Karibou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2005, 14h44
  2. Probleme d'UPDATE sur un champ text
    Par Nip dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 08/07/2005, 11h35
  3. Problème lors d'un Update sur une date
    Par Nany dans le forum ASP
    Réponses: 3
    Dernier message: 19/05/2004, 22h37
  4. Pbleme UPDATE sur POSTGRESQL
    Par $grm$ dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 26/04/2004, 14h50
  5. update sur plusieurs nouvelles valeurs
    Par Mut dans le forum Langage SQL
    Réponses: 4
    Dernier message: 02/11/2003, 16h15

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