1

J'utilise Hibernate envers dans l'un de mes projets. Cela fonctionne vraiment bien et fait ce travail.Comment fonctionne Hibernate Envers?

J'essaie de comprendre le mécanisme de travail interne de l'Envers.

  1. Comment fonctionne envers fonctionne-t-il en interne?

  2. ce qui arrive quand la transaction réelle est réussi et la mise à jour de la table de vérification échoue? L'ensemble de la transaction sera-t-il annulé?

  3. Est-ce être exécuté dans Envers un fil différent de celui réel au service de la demande? ou peut-il être?

Répondre

2
  1. Il utilise le Hibernate Event system pour intercepter tous les entity state transitions et les vérifier.
  2. La transaction de base de données sera annulée et les modifications réelles ainsi que le journal d'audit seront annulés.
  3. Non. Envers est un mécanisme de journalisation d'audit synchrone. Pour la journalisation d'audit asynchrone, vous devez utiliser Debezium.

Si vous souhaitez utiliser Envers, assurez-vous que vous utilisez le validity audit strategy car il fonctionne mieux que celui par défaut.

+0

Merci Vlad. Appréciez l'aide. –