2011-06-22 3 views
2

Qu'est-ce que la gestion des transactions dans Hibernate?Qu'est-ce que la gestion des transactions dans Hibernate?

dans mon application hibernate un mappage un-à-plusieurs est là.

Exemple: Student La table est mappée avec le tableau Subjects.

Lorsque j'ajoute un objet Student à ce moment-là, le tableau Subjects ajoute également une entrée.

Alors qu'une erreur se produit dans l'insertion de table Subjects, je souhaite supprimer automatiquement l'entrée de table Student.

Est-ce possible grâce à la gestion des transactions? Sinon comment est-ce possible?

Répondre

5

Ce que vous avez décrit est exactement ce que sont les transactions. L'idée est que vous regroupiez les opérations de base de données en une seule transaction et qu'elles réussissent toutes ou échouent toutes. De cette façon, votre base de données ne peut pas se retrouver dans un état intermédiaire et invalide. La gestion des transactions est un domaine vaste et souvent assez complexe et la façon dont vous le configurez dépend de votre configuration d'application spécifique.

Puisque vous êtes seulement mentionné Hibernate, je vous recommande de commencer par lire le chapitre this de la documentation. Si vous utilisez Spring pour délimiter les limites de transactions, je vous recommande de lire la section this de leur documentation.

Il est à noter que vous ne pouvez pas envoyer de code SQL à votre base de données en dehors d'une transaction. Il y a une discussion autour de ce here.

+0

merci alex. pour votre replay précieux. – jaleel

Questions connexes