审计

从 Spring Data MongoDB 1.4 开始,可以通过使用 @EnableMongoAuditing 注释配置类来启用审计,如下例所示

  • 命令式

  • 响应式

  • XML

@Configuration
@EnableMongoAuditing
class Config {

  @Bean
  public AuditorAware<AuditableUser> myAuditorProvider() {
      return new AuditorAwareImpl();
  }
}
@Configuration
@EnableReactiveMongoAuditing
class Config {

  @Bean
  public ReactiveAuditorAware<AuditableUser> myAuditorProvider() {
      return new ReactiveAuditorAwareImpl();
  }
}
<mongo:auditing mapping-context-ref="customMappingContext" auditor-aware-ref="yourAuditorAwareImpl"/>

如果您向 ApplicationContext 公开类型为 AuditorAware / ReactiveAuditorAware 的 Bean,则审计基础架构会自动获取它并使用它来确定要设置在域类型上的当前用户。如果您在 ApplicationContext 中注册了多个实现,则可以通过显式设置 @EnableMongoAuditingauditorAwareRef 属性来选择要使用的实现。