【发布时间】:2023-03-10 18:33:01
【问题描述】:
我正在使用 Spring JPA 将数据持久保存在我的应用程序中。我还使用 Hibernate Envers 为我输入到核心表中的每条记录创建历史记录。我想在 write 事务之后立即获得修订,并向用户展示为他/她刚刚所做的更改创建了哪些修订。
换句话说:
第一步:entity -- persisted --> entity table -- envers --> audit table
第二步:return me the audit version just created
我采取了先持久化数据的方法,然后在单独调用中从审计表中检索最新rev信息。随着用户数量的增加,这最终会变得不一致。
MyEntity mySavedEntity = myEntityRepository.save(myEntity);
AuditReader reader = AuditReaderFactory.get(entityManager);
List<Number> revisions = reader.getRevisions(MyEntity .class, mySavedEntity.getId());
// ... get the latest revision and pass it back to the user ...
我该如何解决这个问题? - 谢谢
【问题讨论】:
标签: java hibernate spring-data-jpa spring-data hibernate-envers