【发布时间】:2012-10-15 12:34:31
【问题描述】:
我有一个具有以下结构的 Hibernate 实体:
@Entity
public class A
{
private Integer id;
private String name;
@OneToMany
private List<B> bList;
}
@Entity
public class B
{
private Integer id;
@OneToMany
private List<C> cList;
}
现在我想维护实体“A”的历史记录,信息如下:
historyDate | fieldsChanged | updatedBy | createdBy
在fieldsChanged 列中,我想要实体 A 的列名称以及实体 B 或 C 中是否应用了任何更改。
现在我用谷歌搜索并找到以下几种方法来实现这些:
- DB 上的写入器触发器
- 自己的 Java 逻辑来维护历史表
- 使用 Hibernate Envers
现在我不确定从上面或其他什么方法应该是更好的方法。
任何建议将不胜感激......
【问题讨论】:
标签: java audit hibernate-envers