- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在将 java 应用程序从 Spring Boot 1.5 迁移到 Spring Boot 2.2.3,这涉及将 Hibernate/Envers 升级到 5.4.10.Final。
现有代码调用 AuditReader#getCurrentRevision(Class revisionEntityClass, boolean persist) ,该方法已被弃用,并且 JavaDocs 状态为使用 RevisionListener,但这与我们需要获取现有事务提交时将创建的修订版的作用不同。 getCurrentRevision 方法为我们提供了该功能,但直到我们的代码需要修订号之后才会调用 RevisionListener,并且传递给 RevisionListener#newRevision 方法的 revisionEntity 尚未设置其 id。 RevisionListener 似乎更多地针对在修订实体上设置附加信息,而不是从中获取信息。
如何获取将作为当前事务的一部分创建的修订版本?
谢谢
最佳答案
为了添加一些上下文......我们需要将当前修订存储在代表事件的实体上,以便可以在一天结束时重播该事件并访问事件发生时的帐户状态。
在我们之前的应用程序版本(Spring Boot 1.5)中,我们没有审核事件实体,因为我们没有必要这样做。
为了解决已弃用并标记为删除的功能,我们只需开始审核事件实体。这样,我们就能够在处理事件时而不是在插入事件时访问事件实体插入的修订,这为我们提供了引发事件时帐户状态的修订。
这不是对我原来问题的答案,而是对功能需求的干净解决方案。
关于java - 已弃用的 AuditReader#getCurrentRevision 方法的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59828324/
当我使用 enver reader 时出现错误,数据库上的审核工作正常,但是当我需要创建 reader 时出现错误.. 这是一行: reader.isEntityClassAudited(App_Us
我正在将 java 应用程序从 Spring Boot 1.5 迁移到 Spring Boot 2.2.3,这涉及将 Hibernate/Envers 升级到 5.4.10.Final。 现有代码调用
我是一名优秀的程序员,十分优秀!