簡體   English   中英

如何在Hibernate中創建Audit Log Trail?

[英]How to create Audit Log Trail in Hibernate?

以下是表結構:

id | createdby | createddate | tablename | columnname | primaryid | oldavalue | newvalue | remarks

我們得到定界文件,其中有一些值需要在4個表中更新。 四個表各有10列。 我們不知道要更新什么。 因此,我們只針對一個主要ID更新整行。

現在的挑戰是:

  1. 如何在Hibernate中獲取表名,列名?

  2. 如何獲取舊價值; 在更新期間? 如何知道我們要更新的字段具有舊值,現在我們要插入新值? (我們尚未比較字段)

您可以實現Hibernate的EmptyInterceptor。 在EmptyInterceptor的方法中,您可以找到字段名稱,先前值和當前值。

我最喜歡的工具是Hibernate Envers 您只需將實體注釋為@Audited,然后envers會處理攔截器。

您還可以通過在執行操作之前和之后編寫spring方面來使用Spring AOP,該方面將在審計表中插入數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM