Comment synchroniser Hibernate avec base de données???
cs_Zero0ne
Messages postés2Date d'inscriptionlundi 8 septembre 2008StatutMembreDernière intervention27 janvier 2009
-
26 janv. 2009 à 15:22
cs_Zero0ne
Messages postés2Date d'inscriptionlundi 8 septembre 2008StatutMembreDernière intervention27 janvier 2009
-
27 janv. 2009 à 15:26
Bonjour,
J'utilise Eclipse Ganymede 3.4 et Hibernate Tools 3.2.4CR.
Je souhaiterais savoir comment faire au niveau du cache Hibernate lorsque la base de données est modifiée simultanément par PHP et Java/Hibernate.
Comment faire pour que Hibernate puisse tenir compte des dernièrs changements effectués dans la base de données par PHP?
super_toinou
Messages postés764Date d'inscriptionmardi 25 mai 2004StatutMembreDernière intervention 8 mars 20116 26 janv. 2009 à 18:23
Hello,
tu peux mettre en place des triggers sur les tables impactées.
lors d'une modif tu remplis via ton trigger une table qui te dis quelle table a changée.
Après en java tu peux scanner toutes les 20s cette table et voir si qque chose est apparu.
Je sais pas si y a d'autres solutions mais ça m'étonnerai.
cs_Zero0ne
Messages postés2Date d'inscriptionlundi 8 septembre 2008StatutMembreDernière intervention27 janvier 2009 27 janv. 2009 à 15:26
Hello,
Merci de ta réponse.
Mais j'ai quelques questions supplémentaires :
1-Quand tu parles de trigger est ce le trigger SQL qui est activé par des requêtes SQL?
2-Une fois que tu as scanné les informations sur la mise à jour des tables en Java que fais tu au niveau du code java Hibernate pour que ces modifications des tables soient prises en compte par le cache Hibernate? D'après ce que je comprends d'Hibernate le seul moyen de tenir compte des tables mises à jour c'est de créer de nouvelles sessions mais comment intégrer ça avec Hibernate??
En triggant par PHP un appel à SessionFactory.evict() via une servlet?