2012-02-23 70 views
2

我想在我的項目中添加的調整變化(上單擊信息圖標)的列表,如:休眠Envers修訂信息(變更列表)

Revision X 
- added fieldA entry 
- modified fieladB from B to BB 
- removed fieldC entry 
... 

這是最好的辦法嗎?

ps:我已經使用EntityTrackingRevisionListener。

謝謝。

回答

0

當前最好的方法是加載對象的歷史記錄(歷史版本列表)並用Java進行比較。

最新版本(4.1)也有增加修改標誌的支持(布爾值,指定如果一個字段在其修改與否):http://docs.jboss.org/hibernate/core/4.1/devguide/en-US/html/ch15.html#envers-tracking-properties-changes

也許這可以擴展到一個ADD/MOD/DEL枚舉,就像實體一樣。

+2

最有用的東西只是能夠獲取修訂版本中更改的所有屬性的列表。您可以根據ENTITY的RevisionType和屬性的值來確定是否添加,修改或刪除(實際上已清除)屬性的值。我認爲這是一個更明顯的用例,而不是知道具體的用例是否發生了變化。 – 2012-08-27 12:50:47