问题标签 [spring-data-neo4j-4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
358 浏览

spring-data-neo4j-4 - What are the differences between Spring Data Neo4j 4 and neo4j-ogm?

I notice SDN4 has the concept of repositories and annotations for cypher queries, but this seems not much more than programming style? Neo4j-OGM seems straight forward, easy to set up, with a really practical and efficient API. I'm wondering why both projects exist. Are there any real differences between the two?

Spring Data Neo4j

http://projects.spring.io/spring-data-neo4j/

Neo4j OGM

https://neo4j.com/docs/ogm-manual/current/introduction/

0 投票
1 回答
426 浏览

java - Spring Data Neo4j 4.0:创建了重复节点,应该创建关系

摘要: 使用SDN4,我坚持 10 个对象,其中一半具有相同的内容,只是它们链接到的 id 不同。链接 ID 设置为@Transient。尽管如此,还是会创建两个具有相同内容的对象,而不是一个具有两个指向它的链接的对象。我怎样才能避免这种行为?

详细信息: 我们定义了两个域对象和通过 CSV 的信息源,它们如下所示:

域对象 CSV:

波乔一:

域对象 B:

POJO B:

这些 CSV 文件在它们各自的 POJO(A 和 B)中被解析并加载到 SDN4 中。

现在我们遍历这些对象并添加关系:

然后根存储库repositoryA 用于保存加载的对象。repositoryA.save(domainObjectA);

现在当我查询数据库时;match n return n;

对于每个 A 对象,将有两个ISO9001和两个ISO14001对象。而不是我所期望的,每个都有两个指向A:1和的链接A:3

0 投票
1 回答
327 浏览

neo4j - 如何使用 spring-data-neo4j 在图中对 ACL 结构进行建模(来自 neo4j 文档中提供的示例)

Neo4j 的新手。我想使用 Spring-data-neo4j-4 实现 ACL 结构。我在文档中偶然发现了这个 ACL 示例neo4j.com/docs/stable/examples-acl-structures-in-graphs.html,但我发现使用 Spring-data-neo4j-4 复制它并不是很直观。

有人可以提供一个使用spring data neo4j实现示例ACL图结构的简短示例吗?

具体来说......如何对“安全”和权限进行建模。

0 投票
2 回答
1773 浏览

spring-data-neo4j - 如何在 spring data neo4j 4 中查询路径?

在 spring data neo4j (3.3.1) 的早期版本中,我能够在我的数据库中查询路径并返回它们,Iterable<EntityPath<S,E>>如下所示:

我正在尝试迁移到 4.0.0 并且 EntityPath 类似乎已经消失了。我在迁移指南中没有看到任何提及 EntityPath 的内容。我的新返回类型是什么?

0 投票
1 回答
851 浏览

spring-data-neo4j-4 - 在 Spring-Data-Neo4j 存储库中使用 @Query 指定深度 > 1

使用 spring-data-neo4j 存储库,我可以使用 @Query 并加载深度大于 1 的节点吗?

我的例子是

使用此查询,返回 NodeTypeA。但是我也想要 NodeTypeA 的邻居。

我可以@Inject ogm 会话并使用它来获得我想要的结果,但是使用@Query 会更好。

我注意到文档中有一条注释说:

在当前版本中,派生查找器不支持分页、排序或自定义深度

但是使用@Query 的方法是派生查找器吗?

0 投票
0 回答
81 浏览

spring-data-neo4j-4 - 使用 SDN4 意外删除关系

我在我的数据模型中有一个测试失败,之前在将一些 neo4j-ogm 代码转换为使用 spring-data 后通过了该测试。但是,我几乎可以肯定 spring-data-neo4j 不是我遇到的问题的原因。从概念上讲我缺少更多的东西(关于会话或肮脏或其他东西?)

测试的行为是:

以前,节点 A 使用其属性进行了更新,并且在测试执行后,数据库中的节点 A 和节点 B 之间存在关系。

然而,转换后的结果是一样的,只是在第二次保存对象 A 后,数据库中不再存在节点 A 和节点 B 之间的关系(它被删除)。

我可以做些什么来改变这种行为吗?预期的行为是什么?

0 投票
1 回答
316 浏览

java - Neo4j OGM 图覆盖事务中的更改

我们觉得我们终于对我们在 neo4j-ogm 中看到的奇怪行为有了一个解释。我们最初认为它与 equals/hashcode 实现有关,但事实并非如此。

似乎 ogm 正在保留图形的缓存副本,并且在事务中所有检索都指向同一个内存对象。

我们创建了一个单元测试来演示该行为(下面是一些不起作用的伪代码)

这对我们来说似乎是个问题。

我们之前已经观察到这一点,并通过更改检索到的对象的深度来消除它(以防止它们的图形恢复内存中的内容),但是当它不使用我们的密码查询时,可定制性较差。

请告诉我们如何避免这个问题!

0 投票
2 回答
1034 浏览

neo4j - 如何在 Spring Data Neo4j 4.0.0 中通过路径查询获取节点 ID?

我有一个从以下节点构建的图表:

我的 Spring Data 存储库包含对这些节点之间最短路径的 Cypher 查询:

第二个 Iterable 将实际路径作为节点和关系列表返回,其中每个节点和关系都表示为具有属性的哈希映射。对于像这样的简单图表:

A -- B -- C

方法的结果路径findShortestPaths介于A和之间,C包含 5 个元素:

我猜空地图代表节点之间的关系,在这种情况下它们没有任何属性。我的问题是表示节点的地图不包含该id属性。

问题: 是否可以将节点作为相应的实体对象而不是哈希映射返回?如果没有,我怎样才能在返回的哈希图中获取路径节点的 ID?

0 投票
1 回答
6042 浏览

spring - SDN4 配置 - java.lang.annotation.AnnotationFormatError:无效默认值:...EnableNeo4jRepositories.repositoryBaseClass()

Spring Data Neo4j 4 出现以下错误。我认为这可能是依赖冲突,但我不确定是什么。

上面的亮点似乎是。

我的弹簧依赖项是:

我的 neo4j 依赖项是:

以下是所有其他内容:

有人知道如何解决这个问题吗?有人看到有什么不对劲吗?

0 投票
1 回答
264 浏览

spring - spring data neo4j 3.x 升级到 4.x 关系操作

在 Spring data neo4j 3.x 中创建两个节点之间的关系,并且关系包含一组属性,这些属性早先用于通过 apis 实现这一点

但是迁移后我没有找到上面的api

根据文档说

//关系创建是可能的,但新的api我如何实现以下用例

1.如何避免重复创建关系?

2.获取两个节点之间的关系?

2.删除两个节点之间的关系?