如何最好我可以實現一個基於Java的Web應用程序的文章修訂歷史記錄,並保存在審計日誌實施第三修訂歷史
任何想法StackOverflow上已經有這樣的功能,讓一見從一個版本到另一個版本的差異,幾乎和SVN客戶端差不多。
這是一個比實現問題更多的設計。
此外:如何在網頁上顯示這些更改?
此外:建議的解決方案
Article
--------------------------------
Integer id
String title
String body
List<Tag> tags
AppUser createdBy
Date createdDate
AuditLog
--------------------------------
Integer id
Integer objectId
Operation operation // enum with UPDATE and DELETE. I won't audit an insert
Date createdDate
AppUser createdBy
String class
String revisionXML
String comment
甲HibernateInterceptor將攔截 保存過程和使用Castor XML創建舊的對象的XML字符串。
類和id用於獲取特定對象的修訂版。
google-diff-match-patch將被用於創建HTML差異文件
從答案中,我將使用DaisyDiff。 SVNKit適用於SVN服務器中的數據。從JackRabbit的API中,我沒有看到用於獲取文檔/節點差異的任何接口。 – n002213f
發現了一個類似的問題:http://stackoverflow.com/questions/923398/how-show-revision-history-like-revisions – n002213f
更多; http://stackoverflow.com/questions/39281/database-design-for-revisions; http://stackoverflow.com/questions/762405/database-data-versioning – n002213f