-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 
Author Message
 Post subject: Mise à jour
PostPosted: Fri Jun 26, 2009 5:08 pm 
Newbie

Joined: Tue Apr 14, 2009 7:59 am
Posts: 2
Bonjour,

J'ai effectué le mapping de ma base avec hibernate, et je test actuellement certaines fonctionnalités qui me sont nécessaire pour mon project.
Le mapping fonctionne bien (i.e. lorsque j'effectue un requête pour récupérer un objet, l'objet est bien récupé), mais un problème persiste :
Supposons le sénario suivant:
un certain nombre d'entité en base sont mappés avec hibernate. j'ai donc une liste d'objets mappés.
je souhaite vérifier toutes les X minutes si mes entitées mappées ont été modifiées dans la base, auquel cas je devrais les recharger.
il me serait facil d'effectuer un appel a la méthode refresh de l'objet Session, mais étant donné la quantité d'objets, je pense qu'effectuer
autant de requête que d'objets risque de prendre du temps et n'est pas très performant.
Pour éviter les refresh inutiles, j'ai rajouté un champ dans la base qui représente la date de derniere mise à jour (cette date étant automatiquement
généré grâce à un trigger en base détectant si la modification).
Ainsi, il me suffit d'exécuter une requête permettant de récupérer tous les objets qui ont leur date de mise plus récente que le dernier refresh avec la base.
Cette requête me renvois bien les objets qui ont été modifiés, mais les valeurs modifiés ne sont pas chargée. Je suis obligé d'appeler refresh sur le
résultat de ma requête précédente pour obtenir les nouvelles valeurs (i.e la requête ne sert à rien).

J'aimerais donc savoir s'il était possible de forcer hibernate à mettre à jour tous les champs de l'objet lors de cette requête.
Le problème peut sembler complexe comme ça, mais il est simple. N'hésitez pas à me poser des questions si vous ne comprenez pas (même si la pour le moment, c'est moi qui comprends pas trop comment fonctionne hibernate).

Merci d'avance pour les réponses
Cyril


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 1 post ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.