我想知道有没有简单的方法来实现跟踪实体的变化?有来自Hibernate的Envers进行审计,但据我所知,它是以Hibernate为导向的.我在想如果JPA中有什么东西,或者是一个没有超出规范的解决方案.如果没有,有人可能会让我知道如何开始这种事情.我想到的一个想法是创建一个实体,例如:
class Change {
String className;
long id;
String fieldName;
String fieldValue;
Date dateOfChange;
}
Run Code Online (Sandbox Code Playgroud)
哪个包含更改的属性.这个解决方案在存储空间方面似乎非常有效,但是处理被跟踪的实体之间的关系可能会更加困难(但尚未弄清楚).
我非常感谢本主题中的任何意见,
亲切的问候,P.
您可以使用@PrePersist注释创建条目并将其存储到数据库中。
class Entity{
@PrePersist
public void logChanges(){
Change c = new Change()
c.setEverythingXouLikeToLog();
entityManager.persist(c);
// don't forget ExceptionHandling
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
901 次 |
| 最近记录: |