2011-02-23 1 views
3

Je suis nouveau sur Hibernate, et j'essaie de comprendre l'annotation @Version. Dans tous les exemples que j'ai vu il semble que je devrais fournir une colonne spéciale dans chaque table de ma base de données. Ai-je raison? Je comprends ce que signifie un verrou optimiste, mais puis-je faire en sorte que seul Hibernate soit responsable du versionnement et ne change pas la base de données?Versioning dans le verrouillage optimiste de Hibernate

Répondre

6

Vous devez ajouter une colonne à une table si vous souhaitez utiliser un verrouillage optimiste. Il n'est pas nécessaire d'ajouter une colonne de version à toutes les tables pour le verrouillage optimiste si l'entité enfant est accessible et modifiée au moyen de Entité parent, vous n'avez pas besoin de mettre une colonne de version dans la table de l'entité enfant.

Le verrouillage optimiste est une fonctionnalité puissante des moteurs OR, il n'a pas causé de perte de performance ou d'interblocage comme le verrouillage pessimiste de la base de données, il doit donc être préféré ..

Questions connexes