Lau*_*t T 7 hibernate audit-tables hibernate-envers
我目前正在使用Hibernate Envers.
如何删除与我要删除的实体相关的审计表中的条目?我的实体与其他实体没有关系.
我发现我必须在onPostDelete自定义侦听器的方法中执行此操作:
import org.hibernate.envers.event.AuditEventListener;
import org.hibernate.event.PostCollectionRecreateEvent;
import org.hibernate.event.PostDeleteEvent;
import org.hibernate.event.PostInsertEvent;
import org.hibernate.event.PostUpdateEvent;
import org.hibernate.event.PreCollectionRemoveEvent;
import org.hibernate.event.PreCollectionUpdateEvent;
public class MyListener extends AuditEventListener {
...
@Override
public void onPostDelete(PostDeleteEvent arg0) {
// TODO Auto-generated method stub
super.onPostDelete(arg0);
}
...
}
Run Code Online (Sandbox Code Playgroud)
我已经阅读了文档,论坛,很多东西,但我无法弄清楚.也许这是不可能的,我不知道.
有人曾经这样做过吗?
好吧,对于那些想知道的人来说,我已经完成了 50%。
感谢 Hibernate Envers 的创建者 Adam Warski,我引用:
“id”是一个 hibernate 关键字,表示实体的 id,无论名称是什么;对于审计实体,ID 是复合的,称为“originalId”。尝试:
"delete from full.package.name.User_AUD u where u.originalId.id = :userid"
Run Code Online (Sandbox Code Playgroud)
但现在,我还想删除 revinfo 表中与审计表相关的条目。
如果有人有线索,请告诉我。
| 归档时间: |
|
| 查看次数: |
5893 次 |
| 最近记录: |