Hibernate Envers 禁用 RevisionListener

Posted

技术标签:

【中文标题】Hibernate Envers 禁用 RevisionListener【英文标题】:Hibernate Envers disable RevisionListener 【发布时间】:2019-10-06 00:51:55 【问题描述】:

我使用“自定义”envers RevisionListener 来审核每次修订时的访问令牌(自动装配到侦听器中,请求范围 bean)。

问题:在我的集成测试的设置/拆卸中,我创建/删除对象(创建新修订并因此触发侦听器),但此时没有请求范围的 bean 可用。

想法:在测试上下文中禁用 RevisionListener?

非常欢迎任何解决方案或其他解决方案。

【问题讨论】:

【参考方案1】:

我希望在集成测试场景中你会

    构建请求范围 bean(Spring 应该有办法做到这一点) 使用 Mockito 构建这样一个 Mock bean,然后将其注入 Spring DI。

确实没有理由提供切换来“禁用”修订侦听器,因为可以通过正确设置测试环境以真正支持真正的集成测试场景来解决问题。

【讨论】:

以上是关于Hibernate Envers 禁用 RevisionListener的主要内容,如果未能解决你的问题,请参考以下文章

Hibernate-Envers:审计动态组件

Hibernate Envers:初始化 Envers 代理

Hibernate Envers

Hibernate Envers @NotAudited 注解

审计没有 Hibernate Envers 的 java 实体

在 Spring Hibernate java 项目中使用“Envers”审计表