Comportement de vidage de session Hibernate [et Spring @Transactional]

J'utilise Spring et Hibernate dans une application web,

SessionFactory est injecté dans un DAO bean, et puis ce n'DAO est utilisé dans une Servlet par webservicecontext.

DAO méthodes transactionnelles, à l'intérieur de l'une des méthodes que j'utilise ... getCurrentSession().enregistrer(monobjet);

Une servlet appelle cette méthode avec un objet passé.

La mise à jour ne semble pas être vidées à la foisil faut environ 5 secondes pour voir les modifications dans la base de données. La servlet est la méthode dans laquelle le DAO de la mise à jour de la méthode est appelée, ne prend qu'une fraction de seconde pour terminer.

Après le @Transactional méthode de DAO est terminé, les bouffées de chaleur ne peut PAS arriver ? Il ne semble pas être une règle [ j'ai déjà le voir ].

Alors la question est: est-ce que faire de la force de la session de rincer après chaque méthode DAO?
Il peut ne pas être une bonne chose à faire, mais parler d'une couche de Service, certaines méthodes doit prendre fin immédiatement rincer, et la Session Hibernate comportement n'est pas prévisible.

Alors, que faire pour garantir que ma @Transactional méthode persiste toutes les modifications après la dernière ligne de code de la méthode?

 getCurrentSession().flush() is the only solution?

p.s. J'ai lu quelque part que @Transactionnelle EST ASSOCIÉ à une base de Transaction. Méthode retourne, la transaction doit être validée.
Je ne vois pas ce qui se passe.

source d'informationauteur EugeneP | 2010-05-20