Spring Data Neo4j SDN 4审计支持

时间:2016-03-24 07:29:22

标签: java spring spring-data spring-data-neo4j spring-data-neo4j-4

我尝试使用Spring数据设置简单的实体审核字段,其中包含spring-data-commons的注释(例如@CreatedDate类型Long,如此处所提到的http://docs.spring.io/spring-data/commons/docs/current/reference/html/#auditing.annotations

此处讨论了Neo4j 2.0的解决方案:Audits with Spring Data Neo4j。但是对于版本4,该类似乎已经在分发​​中消失了。

我假设必须将事件监听器添加到Neo4j才能填充这些字段。但是我无法在spring-data-neo4j发行版的任何地方找到@EnableMongoAuditing(MongoDB)和@EnableJpaAuditing(JPA)的neo4j副本。

这是否意味着我必须忽略Neo4j上的这个特定Spring Data功能?还有其他选择吗?

1 个答案:

答案 0 :(得分:0)

@Polyakoff SDN 4目前不支持来自公共库的注释。为了解决这个问题,我必须创建一个Spring bean来监听before save事件,如下所示:

@Bean
ApplicationListener<BeforeSaveEvent> beforeSaveEventApplicationListener() {
    return new ApplicationListener<BeforeSaveEvent>() {
        @Override
        public void onApplicationEvent(BeforeSaveEvent event) {
               event.getEntity().setCreatedDate(System.currentTimeMillis());
        }
    };
}