繁体   English   中英

Spring-data-neo4j获取节点和标签

[英]Spring-data-neo4j get nodes and labels

我目前正在使用Springneo4j 一个任务是使用linkurious显示图。 但是,如何通过spring-data-neo4j告诉Spring节点的标签? 我需要标签来为图加色。 如果使用在图形存储库中定义的findAll() ,将仅返回节点属性?

有什么建议吗?

更新

我尝试使用@QueryResult ,但是响应出了点问题。 更加具体:

我定义

@QueryResult
public class NodeWithLabel {
    GLNode glNode;
    ArrayList<String> labels;
}

然后在存储库中,我有

@Query("MATCH (n:GLNode) RETURN n AS glNode, labels(n) as labels")
Collection<NodeWithLabel> getAllNodesWithLabel();

最后,我将得到ArrayList<E>的结果,因此spring mvc将像[{},{},{},{}]一样响应为空。 通常,例如嵌入式的findAll()函数,应返回LinkedHashSet<E> ,在这种情况下,spring mvc可以发送回json响应。

SDN 4.0不会将节点/关系映射到@QueryResult中的域实体。 您发布的代码将适用于SDN 4.1

如果要在SDN 4.0中实现相同的目的,可以执行以下操作:

@QueryResult
public class NodeWithLabel {
    Long id;
    Map<String,Object> node;
    ArrayList<String> labels;
}


@Query("MATCH (n:GLNode) RETURN ID(n) as id, labels(n) as labels, {properties : n} as node")
Collection<NodeWithLabel> getAllNodesWithLabel();

注意: 强烈建议您计划升级到SDN 4.1

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM