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 :

update multiple entity


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2012
    Messages : 93
    Par défaut update multiple entity
    Salut,
    j'ai deux entity, etudiant et college, un college contient 1 ou plusieurs etudiants
    je veux modifier les deux entity ensemble, je fais dataGrid pour affiche touts les college, lorsque cliquer sur le college, il m'affiche dailog conteint le nom de college et les information de touts les etudiantes qui appartient à ce college, avec une bouton pour modifier ces informations
    j'ai créé la methode modification de l'etudiant et college, mais lorsque je cliquez sur le bouton la methode update qui est dans la bean ne fonctionne pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    @Entity
    public class College implements java.io.Serializable {
     
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID")
        @SequenceGenerator(name = "ID", sequenceName = "ID_SQ")
        private int id_c;
        private String nom_c;
     
        @OneToMany(targetEntity = Etudiant.class, cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "college")
        private List<Etudiant> etudiants;
    ...
    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
    16
     
    Entity
    public class Etudiant implements java.io.Serializable {
     
        @Id
        @GeneratedValue(strategy = GenerationType.AUTO, generator = "ID")
        @SequenceGenerator(name = "ID", sequenceName = "ID_SQ")
        private int id;
        private String nom;
        private String prenom;
        private int age;
     
        @ManyToOne(cascade = CascadeType.PERSIST)
        @JoinColumn(name = "FK_COLLEGE")
        private College college;
    ...
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    public class ImplEtudiant implements IEtudiant {
     
        @Override
        public Boolean modifierEtudiant(Etudiant etd) {
            try {
                Session session = HibernateUtil.getSessionFactory().openSession();
                Transaction tx = session.beginTransaction();
                session.update(etd);
                tx.commit();
                session.close();
                return true;
            } catch (Exception e) {
                return false;
            }
        }
     
        @Override
        public Boolean modifierCollege(College col) {
            try {
                Session session = HibernateUtil.getSessionFactory().openSession();
                Transaction tx = session.beginTransaction();
                session.update(col);
                tx.commit();
                session.close();
                return true;
            } catch (Exception e) {
                return false;
            }
        }
     
        @Override
        public List<College> list1() {
            Session session = HibernateUtil.getSessionFactory().openSession();
            List<College> listQQ = session.createQuery("from College qq").list();
            session.close();
            return listQQ;
        }
     
        @Override
        public List<Etudiant> listEtudiantCond(Integer a) {
            Session session = HibernateUtil.getSessionFactory().openSession();
            List<Etudiant> listRQ = session.createQuery("select r from Etudiant r where r.college.id_c = :search").setParameter("search", a).list();
            session.close();
            return listRQ;
        }
     
    }

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    @ManagedBean
    @ViewScoped
    public class Bean {
     
        private IEtudiant dao;
        private Etudiant etudiant;
        private College college;
        private List<Etudiant> etudiantsC;
        private List<College> colleges;
     
        @PostConstruct
        public void init() {
            dao = new ImplEtudiant();
            etudiant = new Etudiant();
            college = new College();
            etudiantsC = new ArrayList<Etudiant>();
            colleges = dao.list1();
        }
     
        public void update() {
            dao = new ImplEtudiant();
            dao.modifierEtudiant(etudiant);
            dao.modifierCollege(college);
        }
     
        public List<Etudiant> getEtudiantsC(Integer a) {
            dao = new ImplEtudiant();
            etudiantsC = dao.listEtudiantCond(a);
            return etudiantsC;
        }
    ....

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
            <h:form id="form">
     
                <p:dataGrid var="car" value="#{bean.colleges}" layout="grid">
                    <p:panel header="College #{car.id_c}:" style="text-align:center">
                        <h:outputText value="#{car.nom_c}" /><br/>
                        <p:commandButton icon="ui-icon-pencil" title="Modifier" update=":form:Detail"
                                         oncomplete="PF('modf').show()">
                            <f:setPropertyActionListener value="#{car}" target="#{bean.college}" />
                        </p:commandButton>
                    </p:panel>
                </p:dataGrid>
     
     
     
                <p:dialog header="Modifier Question" widgetVar="modf" appendTo="@(body)">
                    <p:outputPanel id="Detail" style="text-align:center;">
                        <h:panelGrid columns="2">
                            <h:outputText value="Nom College:" />
                            <h:inputText value="#{bean.college.nom_c}"/>
                        </h:panelGrid>
                        <p:separator/>
                        <h:panelGrid id="alvs">
                            <ui:repeat id="rep" value="#{bean.getEtudiantsC(bean.college.id_c)}" var="value">
                                <p:panelGrid columns="2">
                                    <h:outputLabel value="Nom:"/>
                                    <p:inputTextarea value="#{value.nom}" />
                                    <h:outputLabel value="Prenom:"/>
                                    <p:inputText value="#{value.prenom}"/> 
                                    <h:outputLabel value="Age:"/>
                                    <p:inputText value="#{value.age}"/>
                                </p:panelGrid>
                            </ui:repeat> 
                        </h:panelGrid>
                        <p:separator/>
                        <p:commandButton value="Update" actionListener="#{bean.update()}" />
                    </p:outputPanel>
                </p:dialog>
     
            </h:form>

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur Java/JavaEE
    Inscrit en
    Août 2014
    Messages
    194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Java/JavaEE

    Informations forums :
    Inscription : Août 2014
    Messages : 194
    Par défaut
    Bonjour,

    Tu veux dire quoi par ça ne fonctionne pas ?? que l'appel de ta méthode update() ne se fait pas ou que tu reçois une exception? si c'est le cas tu peux nous faire partager le message d'erreur

Discussions similaires

  1. [MySQL] Update multiples et PHP
    Par nath-0-0 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 24/04/2006, 12h48
  2. update multiple dans une meme colonne
    Par debdev dans le forum Langage SQL
    Réponses: 7
    Dernier message: 29/01/2006, 21h46
  3. Update multiple [8i]
    Par Endymion222 dans le forum Oracle
    Réponses: 3
    Dernier message: 10/01/2006, 09h46
  4. UPDATE multiples : un seul pris en compte
    Par balti dans le forum Requêtes
    Réponses: 7
    Dernier message: 29/12/2005, 12h02
  5. Réponses: 3
    Dernier message: 25/01/2005, 12h31

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