我正在使用Hibernate Envers进行审计。更新后和插入后都可以正常工作。
我有一个要求,我只需要审计审计表中更新的列(例如employee_aud)。默认情况下,envers会将整个持久化实体插入到审计表中。
我只需要插入更新的值。
有这样做的可能性吗?
提前谢谢。
干杯!
发布于 2012-10-09 21:29:41
如果您没有为插入后配置envers侦听器,会发生什么?
我的意思是,如果你从你的配置中删除了插入后的监听器?
<listener class="org.hibernate.envers.event.AuditEventListener" type="post-insert"/>发布于 2016-12-09 09:24:45
当您使用@Audited注释实体时,您控制的是Envers在发生更改时应该检查哪些属性。然后,将这些属性在新旧状态之间进行比较,如果有任何不同,Envers将使用所有已审计属性的新状态值写入新的审计记录。
换句话说,Envers不会写一个新的审计行,其中只包含您为审计而切换的已修改属性。如果其中任何属性发生更改,它将写入一个新的审核行,其中包含所有审核的属性。
https://stackoverflow.com/questions/12800540
复制相似问题