如何控制自定义 Spring Data Neo4j 存储库方法的深度?

How to control depth on custom Spring Data Neo4j repository methods?

例如,如果我想按名称获取用户列表:

class UserRepository extands GraphRepository<User> {

    List<User> findByName(String name);
}

那加载深度怎么设置为2呢?

我试图在 SDN 4.0.0.RC2 docs 中找到答案,但它不包含有关此问题的任何内容。

派生的查找器尚不支持深度。如果适用,您必须编写自定义查询或在 Neo4jTemplate 上使用 loadAllByProperty 方法。

这应该在文档中提到,我们会添加它。

截至 SDN 4.2.0-M1, this feature has been implemented. It hasn't made it to the reference documentation at the time of this writing, but see this PR 用于实施、测试和示例应用程序更新。

简而言之,派生的查找器方法现在可以使用 @Depth(n) 注释来指定 n 的提取深度 (ref). You can also add a @Depth-annotated argument to method signatures that can be used to specify the fetch depth on each call (ref)。

干杯,@Luanne - 这看起来很棒 :)