2012-09-11 58 views
1

在我正在使用的應用程序中,我使用spring,hibernate和envers進行審計。 envers與呼叫類似,hibernateTemplate.insert,hibernateTemplate.save,hibernateTemplate.saveOrUpdate。但它似乎沒有工作,當我打電話hibernateTemplate.bulkUpdate解決envers審計批量更新

我搜索瞭解決方案,發現envers不支持bulkUpdate。

解決方法已在下面的鏈接中提供,但我無法獲得它。

Envers Bulk insert/updates

這會有所幫助,如果有人能爲此提供一種解決方法/樣品。

謝謝

回答

1

該文檔是正確的。 HQL和本機SQL操作不會被審計。

由於批量更新的性能會受到審計的影響,因此您可能希望更改您的設計 - 例如,如果您有一個擁有相關子項的父實體,並且您正在對子記錄執行批量更新,您可以更新父記錄的屬性,然後在執行批量更新後調用saveOrUpdate。

另一種選擇是在審計表上手動執行批量更新,但它不會很優雅。按照上面的說明,通過更改設計,我設法解決了這個問題。