java - 如何使用 Spring Data JPA + Neo4j 正确设置跨商店持久性?

标签 java spring spring-boot spring-data-jpa spring-data-neo4j

我正在尝试运行一个非常小的 JPA + SDN (Spring Data Neo4j) 跨存储项目,并试图证明使用 JPA 存储库调用保存部分实体将在 Neo4j 中创建相应的节点。

我已按照我在 SO、Google 和 Spring 网站上找到的说明/建议进行操作,但目前仍然无法正常工作。我目前在以下位置创建了一个最小的测试项目:

https://github.com/simon-lam/sdn-cross-store-poc

该项目使用 Spring Boot 并有一个简单的域,其中包含一个图实体 GraphNodeEntity.java 和一个部分实体 PartialEntity.java。我已经编写了一个非常基本的测试 PartialEntityRepositoryTest.java,以对部分实体进行保存并看到:

  • 似乎使用了错误的事务管理器,因为 CrossStoreNeo4jConfiguration 类没有正确地 Autowiring entityManagerFactory,它是 null
  • 由于上述 ^,没有 ID 分配给我的实体
  • 我在日志中根本没有看到任何 SDN Activity
  • 我做错了什么吗?

更一般地说,我希望确认一些假设并更好地理解一般的跨商店持久性支持:

  • 要启用它,我是否需要启用高级映射?
  • 作为启用高级映射的一部分,我需要设置 AspectJ;这是否包括启用加载时间编织?如果是这样,这是通过使用 @EnableLoadTimeWeaving 配置完成的吗?
  • 假设我的所有配置最终都已修复,当我使用 JPA 存储库保存部分节点时,我是否应该期望看到部分节点保存在 Neo4j 中?这应该由方面驱动的跨商店支持来处理,对吧?

感谢您提供的任何帮助!

最佳答案

我向 Neo4j Google Group 发送了一条消息,并从 Michael Hunger 那里得到了一些反馈,所以我将在这里分享:

  • 原来交叉存储库已经 hibernate 了一段时间
  • 不支持 JPA 存储库,仅支持 EntityManager 操作
  • 跨商店设置不适用于远程服务器且未经过测试

总而言之,我的核心理解/假设是错误的!

来源:https://groups.google.com/forum/#!topic/neo4j/FGI8692AVJQ

关于java - 如何使用 Spring Data JPA + Neo4j 正确设置跨商店持久性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30920503/

相关文章:

java - 从支持 bean 访问 JSF 组件标记属性值

c# - ORM/如何处理Domain对象和Persistent对象的对应关系?

java - java发送邮件时如何处理特殊字符?

java.sql.SQLException : Connection is null 异常

java - Spring 框架。根据请求参数在运行时注入(inject) bean

java - Apache solr 获取(打开文件太多)

spring - 动态 Spring 特性

java - org.springframework.beans.factory.BeanDefinitionStoreException : Failed to read candidate component class: file [******]

java.lang.IllegalArgumentException : Cannot instantiate interface org. springframework.context.ApplicationContextInitializer

java - 在 Spring Boot 中覆盖 AnnotationMBeanExporter 上的默认 RegistrationPolicy