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 :

Probleme sur le update


Sujet :

Hibernate Java

  1. #1
    Membre confirmé Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Points : 576
    Points
    576
    Par défaut Probleme sur le update
    Salut a tous ^^
    Je suis devant un cas que je ne comprend pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Class A{
    String pa;
    String ct;
     
    getter et setter ....
    }
    Dans une action je load une instance de A a partir de ma database, je fais un set sur la property pa et je store (saveOrUpdate). Pas de probleme, mon object a été modifié dans la base.
    dans une autre action je load une instance de A à partir de ma database, je fais un set sur la property ct et hop mon object a été modifié dans la database sans que je fasse un store.

    QQun a des idées d'ou ca peut venir ? J'aimerai egalement connaitre toutes les causes de ce genre de comportement ... Ce n'est pas bloquant mais j'aimerai comprendre ...

  2. #2
    Membre éprouvé Avatar de Gardyen
    Homme Profil pro
    Bio informaticien
    Inscrit en
    Août 2005
    Messages
    637
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Bio informaticien

    Informations forums :
    Inscription : Août 2005
    Messages : 637
    Points : 1 050
    Points
    1 050
    Par défaut
    le saveOrUpdate(), ou plus exactement le update() n'est pas nécessaire pour sauver les modifications sur les objets.

    Si ton objet est chargé et modifié dans la même transaction, le commit suffira a sauver les modifications

    à lire cette réponse dans la FAQ Hibernate qui explique dans quels cas saveOrUpdate() et update() devraient être utilisés

    en bref ça dit que ces fonctions ne devraient être utilisées que dans le cas où les objets sont modifiés en dehors d'un contexte de session
    Nous les geeks, c'est pas qu'on a une case en moins, c'est juste qu'on compte à partir de zéro.
    Plus les choses changent, plus elles restent les mêmes

  3. #3
    Membre confirmé Avatar de JoloKossovar
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    532
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 532
    Points : 576
    Points
    576
    Par défaut
    hummmm ok !
    Je ne suis pas dans ce context, normalement j'ai tjs besoin d'un saveOrUpdate car je disconnect toujours la session apres un load... En fait mon object etait storé par cascade via un store d'une table avec une compositeId la liant a mon objet.

    Merci a toi pour ta réponse ^^

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 74
    Points : 83
    Points
    83
    Par défaut
    Pas exactement:
    Si ton objet est chargé et modifié dans la même session, le flush suffira a sauver les modifications.
    Sachant que:
    souvent on a une transaction par session (sauf si l'on veut mettre en oeuvre le pattern session-per-conversation)
    et le flush est fait automatiquement par Hibernate lors du commit(). il est aussi fait avant l'exécution d'une requête hql par exemple... voire même lorsque tu le demandes explicitement : session.flush()




    Citation Envoyé par Gardyen Voir le message
    Si ton objet est chargé et modifié dans la même transaction, le commit suffira a sauver les modifications

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

Discussions similaires

  1. [MySQL] probleme sur un update, poo.
    Par Alex63530 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 28/12/2011, 20h16
  2. Probleme sur un Update avec ODP.NET
    Par IsaacB dans le forum Accès aux données
    Réponses: 2
    Dernier message: 19/03/2009, 11h26
  3. [HQL] probleme sur requete Update
    Par __Ez__ dans le forum Hibernate
    Réponses: 2
    Dernier message: 29/04/2008, 11h12
  4. MS Serveur 2005, probleme sur un update
    Par lazins dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 17/03/2008, 19h17
  5. [ASP.net][GridView] Probleme sur un update
    Par jeromechezgdf dans le forum ASP.NET
    Réponses: 6
    Dernier message: 31/05/2007, 17h23

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