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 :

Mettre à jour une collection d'objets


Sujet :

Hibernate Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Architecte de système d’information
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Par défaut Mettre à jour une collection d'objets
    Bonjour,

    Je travaille avec hibernate 2, et je voudrais savoir est ce qu'on peut mettre à jour une collection d'objets d'un seul coup, car pour le moment je me contente de loader mon objet et le modifier puis le mettre à jour comme suit:
    MyObjet obj=session.load(MyObjet.class,id);
    obj.setProp("toto");
    obj.update();

    le but est de updater une collection d"objets en même temps.

    merci pour votre aide.

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bonjour,

    Je me trompe peut être mais en faisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
           Query query = session.createQuery( "requête");
     
             for( Iterator it=query.iterate() ; it.hasNext() ; ) {
                MyObjet.class monObj = (MyObjet.class) it.next();
                //traitement
             }

  3. #3
    Membre éclairé
    Architecte de système d’information
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Par défaut
    Bonjour,

    c'est effectivement ce que j'vaias fait mas jen faisant des session.update j'ai remarqué que les modifications ne sont pas prises en compte, à moins de loader les objets avec .load un par un

    Citation Envoyé par Fench Voir le message
    Bonjour,

    Je me trompe peut être mais en faisant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
           Query query = session.createQuery( "requête");
     
             for( Iterator it=query.iterate() ; it.hasNext() ; ) {
                MyObjet.class monObj = (MyObjet.class) it.next();
                //traitement
             }

  4. #4
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    En fait, je ne fais pas d'update directement:

    Avant le traitement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
            session = HibernateUtil.currentSession();
     	tx = session.beginTransaction();
    Puis le traitement avec le
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    obj.setProp("toto");
    dans la boucle des iterate

    Et enfin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
            tx.commit();
     	HibernateUtil.closeSession();

  5. #5
    Membre éclairé
    Architecte de système d’information
    Inscrit en
    Septembre 2005
    Messages
    236
    Détails du profil
    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Septembre 2005
    Messages : 236
    Par défaut
    c'est exactement ce que je fais mais les mises a jour ne sont aps prises en compte dans la base, il faut que je fasse session.load pour charger l'objet

  6. #6
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Ah bon

    Je vais regarder mon code plus en détail pour trouver la petite bête différente.

    Parceque chez moi, ça marche !!!!

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

Discussions similaires

  1. Mettre à jour une collection (sorteddictionary)
    Par joel88 dans le forum VB.NET
    Réponses: 7
    Dernier message: 18/08/2009, 10h56
  2. Mettre à jour une base sous SQL SERVER 2000
    Par FilipeVV dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 11/02/2005, 12h24
  3. Comment mettre à jour une ligne sans doublon via déclencheur
    Par fuelcontact dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/08/2004, 15h56
  4. Mettre à jour une table depuis une autre
    Par rsc dans le forum SQL
    Réponses: 4
    Dernier message: 09/07/2004, 10h08
  5. [VB6] Sauvegarder une collection d'objets
    Par Sayagh dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 19/09/2003, 11h58

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