Comment est-Hibernate afin de décider de la mise à jour/insérer/supprimer

Nous allons tout d'abord oublier la mise en veille prolongée. Supposons que j'ai deux tables, Une & B. Deux opérations sont la mise à jour de documents mêmes dans ces deux tableaux, mais txn 1 mise à jour de B, puis A, tandis que txn 2 mise à jour A puis B. C'est un typique exemple de blocage. La plus commune façon d'éviter cela est en pré-définition de l'ordre d'acquisition des ressources. Par exemple, nous devrions mettre à jour le tableau A puis B.

Revenir à Hibernate. Lorsque nous mettons à jour beaucoup d'entités en une seule session, une fois que je suis rinçage de la session, les modifications des différentes entités va générer correspondant insert/update/delete DB. Ne Hibernate ont un algorithme pour décider de l'ordre du jour parmi les entités? Si non, quel est le moyen de Hibernate utilisé pour empêcher le blocage de la situation décrite dans le 1er paragraphe?

Si Hibernate est le maintien de l'ordre, comment puis-je savoir ou de contrôler l'ordre? Je ne veux pas que mon explicite de mise à jour en DB conflits avec mise en veille prolongée, et provoquer un blocage.

InformationsquelleAutor Adrian Shum | 2012-09-27