当前位置: 首页 > 知识库问答 >
问题:

Hibernate envers-如何仅存储更新的值

丁学
2023-03-14

我正在使用Hibernate Envers进行审计。后期更新和后期插入工作正常。

我有一个要求,即我只需要审核审核表中更新的列(例如employee_aud)。默认情况下,envers会将整个持久化实体插入到审计表中。

我只需要插入已更新的值。

有没有可能这样做?

提前谢谢。

干杯

共有2个答案

龙德润
2023-03-14

当您使用@Audited注释实体时,您可以控制当发生更改时,Envers应该检查哪些属性。然后在旧状态和新状态之间比较这些属性,如果有任何不同,Envers将为所有已审核属性编写一个新的审核记录,其中包含新的状态值。

换句话说,Envers不会编写一个新的审计行,其中只包含您为审计而切换的修改属性。如果任何已审核属性发生更改,它将写入包含所有已审核属性的新审核行。

顾均
2023-03-14

如果不为后期插入配置envers侦听器,会发生什么情况?

我的意思是如果你从你的配置中取出插入后的监听器?

 <listener class="org.hibernate.envers.event.AuditEventListener" type="post-insert"/>
 类似资料:
  • 问题内容: 假设您已经在使用m2eclipse插件,当它没有将依赖关系更新到您的仓库中的最新版本时,您该怎么办? 例如,在命令行上,您只需添加如下标记即可 …强制更新依赖项。Eclipse中是否有类似的东西?(似乎并不总是能够获得最新更新。) 问题答案: 您可以 右键单击 项目,然后 右键单击 Maven >更新项目…,然后选择 强制更新快照/发布 复选框,然后单击确定。

  • 我使用StreamsBuilder的simply API构建一个GlobalKTable,如下所示: 我希望收到变更通知。它很少更新,如果更新,我想触发缓存失效。Kafka的做法是什么?

  • 我不明白为什么不更新我的对象。在另一个组件中,我通过调度更新状态。在此情况下(在下面的代码中),mapStateToProps类别中的代码正在更改(控制台日志显示另一个类别)。但组件并没有重播,虽然在组件中我使用了道具。类别。事件控制台。登录元素未运行 我认为,如果我更新状态,则根据该状态更新组件。它应该如何工作?它应该如何工作?它可能很有用,添加类别的项不是父项或子项,而是邻居 谢谢你解决问题。

  • 在Android Q中,字段mediastore.files.fileColumns.data已被弃用,并且可能为空,或者应用程序在针对这样的操作系统版本时没有读取该字段的权限,因此最好只使用文件的内容URI。 由于MediaScannerConnection只接受文件路径,我发现对于Android Q来说,这不再是一个选项。 在不知道文件的真实路径和仅使用其URI的情况下,强制对单个文件进行自动

  • 我正在努力让普里斯玛和继电器工作。这是我的回购协议: https://github.com/jamesmbowler/prisma-relay-todo 这是一个简单的待办事项列表。我可以添加待办事项,但用户界面不会更新。当我刷新时,待办事项就在那里。 我能找到的所有更新存储的示例都对正在更新/创建的对象使用“父”。 看https://facebook.github.io/relay/docs/e