2015-09-29 136 views
0

我想知道是否有人成功地用Hibernate Envers審計了本機查詢(SQL)?我知道這可能只是錯誤的,但它會讓我花費很多重構時間。Hibernate Envers SQL審計

乾杯

尼克

+0

@adamw對此有何看法? – nicolasl

+0

你是什麼意思審計一個SQL查詢? – AppSensei

+0

我的意思是執行插入使用SQL(例如使用executeUpdate())而不是hibernate.persist/save()... – nicolasl

回答

0

我只是想離開這裏我的想法,所以當他們選擇Envers其他可能受益。我們在最近的一個項目中嘗試了Hibernate envers,但沒有成功。以下是原因

  1. 只有通過持久性上下文發生更新時,Hibernate Envers纔會捕獲審計信息。
  2. 我們不喜歡每個實體的一個審計表。這是太多的圖式污染。
  3. 我們有很多批量作業和數據同步腳本,它們直接使用sql查詢來更新數據。在持久化上下文之外發生的任何更新都不會在這些Hibernate ENvers創建的審計表中捕獲。

因此我們用數據庫觸發器appraoach去了,只有一個AUDIT表將捕獲table_name,column_name,primary_key,old_value和new_value。它爲我們工作。

相關問題