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

Hibernate envers获取删除的行数据

公孙锋
2023-03-14

在我的应用程序中,我需要显示删除了哪些行。我需要查找特定类的已删除行详细信息。

到目前为止,我得到了一个返回删除的实体ID的查询,我如何获得所有实体字段?

final AuditQuery query = auditReader.createQuery().forRevisionsOfEntity(Partner.class, false, true);
query.add(AuditEntity.revisionType().eq(RevisionType.DEL));
final List<?> results = query.getResultList();

共有1个答案

况弘新
2023-03-14

您的查询是您想要的,但问题是默认情况下,当记录被删除时,Envers不会捕获实体的状态。默认情况下捕获的唯一信息是修订、修订类型和图元的主键值。

您需要的是在Hibernate配置中将org.hibernate.envers.store_data_at_delete设置为true,以便它不仅存储我上面提到的实体的值,还存储所有经过审计的字段。这将允许您使用的查询返回一个实体实例,其中根据删除前实体的外观填充了所有已审计的字段。

 类似资料:
  • 我的任务:我必须从jsp视图中删除对表“testtable”的每一行操作。 后端MySQL:=我有两个表一个“userinfo”用于aurtherntication,另一个表“testtable”。 对于两个表连接,我使用了jsp中的隐藏字段输入,而不是使用外键关系。 在控制台打印中,我们可以在单击delete按钮后看到com.mysql.jdbc.jdbc4PreparedStatement@1

  • 我正在使用Google OAuth连接到仪表板,问题是当

  • 本文向大家介绍JavaScript获取表格(table)当前行的值、删除行、增加行,包括了JavaScript获取表格(table)当前行的值、删除行、增加行的使用技巧和注意事项,需要的朋友参考一下

  • 问题内容: 我有一个可能看起来像这样的数组: ANOVAInputMatrixValuesArray = [[ 0.96488889, 0.73641667, 0.67521429, 0.592875, 0.53172222], [ 0.78008333, 0.5938125, 0.481, 0.39883333, 0.]] 请注意,其中一行的结尾处为零。我想删除任何包含零的行,同时保留所有包含非

  • 我有一个名为“mydata”的数据框,看起来像这样: 我想删除第2、4、6行。例如,像这样:

  • 我想使用spring的RestTemplate进行REST调用,URL包含一些可选的查询参数。URL看起来类似于 url=example.com/param1={param1}&param2={param2} 我使用exchange方法将参数作为映射传递给restTemplate RESTTemplate.Exchange(url、方法、负载、String.Class、params) 最后的URL