Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何禁用spring引导的envers审核_Java_Hibernate Envers_Auditing - Fatal编程技术网

Java 如何禁用spring引导的envers审核

Java 如何禁用spring引导的envers审核,java,hibernate-envers,auditing,Java,Hibernate Envers,Auditing,我正在创建一个maven多模块项目,其中一个模块仅用于hibernate实体,问题是两个服务/api/maven_项目使用同一个模块,但其中一个需要审核,而另一个不需要审核,我如何保持代码完整(意味着不更改或删除@Audited注释),如何在运行时或编译时启用或禁用envers审核, 因为在我尝试过的所有事情之后,审计对这两个api都有效 我试过了 spring.jpa.properties.hibernate.integration.envers.enabled=false spring.jp

我正在创建一个maven多模块项目,其中一个模块仅用于hibernate实体,问题是两个服务/api/maven_项目使用同一个模块,但其中一个需要审核,而另一个不需要审核,我如何保持代码完整(意味着不更改或删除@Audited注释),如何在运行时或编译时启用或禁用envers审核, 因为在我尝试过的所有事情之后,审计对这两个api都有效

我试过了

spring.jpa.properties.hibernate.integration.envers.enabled=false
spring.jpa.properties.hibernate.listeners.envers.autoRegister=false
spring.jpa.properties.hibernate.envers.autoRegisterListeners=false

hibernate.integration.envers.enabled=false
hibernate.listeners.envers.autoRegister=false
hibernate.envers.autoRegisterListeners=false
按照

我会做的

通过配置“非Spring数据JPA”Hibernate属性
spring.jpa.properties.hibernate.


是否可以排除不需要审核的模块的Envers依赖项?是的,Jens,但为了做到这一点,我必须更改所有具有@audited注释的实体类,我希望保留它们,以便在将来使用或启用它们,如果您将依赖项设置为,前提是它们不会包含在Spring Boot可执行JAR中,并且不会进行审核,但代码会编译。包含实体的模块将保留依赖项。字节码中存在的注释不是问题,因为在类路径中找不到的字节码中的注释会被忽略。感谢Simon和Jens,它工作得很好,但是否有其他选项可用于启用或禁用application.properties审核,因为当另一个子模块/服务启动后,过一段时间事情会变得一团糟像A->B->C一样引入,其中A是实体模块B是服务(启用或禁用审核),C是另一个以B作为依赖项的服务(并且C具有启用或禁用B审核的能力),只是想以某种方式保持配置集中
spring.jpa.properties.hibernate.integration.envers.enabled=false