我想获取属于一个节点的所有标签,如果SDN4.0中有一种方法可以在一个查询中实现这一点吗?
例如,我当前的回购协议如下
Book findById(Long bookId);
@Query("MATCH (n:Book) where id(n)={0} set n:AnotherLabel return n")
Book updateBookLabel(Long bookId);
有没有反正我可以简单地
book.getLabels();
检索此账本节点的所有标签。
这本书的课程是
@NodeEntity
public class Book extends Something {
}
是的,默认情况下,我的Book节点应该有两个标签Book
和某物
。由于我在回购中有一个更新方法来添加另一个标签。无论如何,我可以找回这本书与所有3个标签?
谢啦
是的,这是一个可行的例子
实体
public class Book {
@Labels
Set<String> labels= new HashSet<>();
private Long id;
}
回购
public interface BookRepository extends GraphRepository<Book>
{
}
var标签将包含一个节点的所有标签,因为它是用@Label
注释的,所以您可以执行book。getlabel()
或者甚至是setLabel()
,如果您愿意的话。
在这个例子中,我使用了Spring引导1.4.0和neo4j社区3.0.4。
实现这一点的唯一方法是通过自定义查询-
@Query("MATCH (n:Book) where id(n)={0} return labels(n) as labels")
List<String> getBookLabels(Long bookId);
(未经测试)
根据评论更新
要在单个查询中返回标签和节点属性,请使用@QueryResult-
SDN 4.0(无法将自定义查询中的节点和关系映射到查询结果中的域实体):
@QueryResult
public class BookResult {
Long id;
Map<String,Object> node;
List<String> labels;
}
@Query("MATCH (n:Book) where id(n)={0} return labels(n) as labels, ID(n) as id, {properties: n} as node")
BookResult getBookLabels(Long bookId);
SDN 4.1
@QueryResult
public class BookResult {
Book node;
List<String> labels;
}
@Query("MATCH (n:Book) where id(n)={0} return labels(n) as labels, n as node")
BookResult getBookLabels(Long bookId);
问题内容: 在使用Jenkins Docker插件时,可能由于错误而导致无法启动群集。我没有注意,目前有数千个脱机节点无法启动。 底线-是否可以批量删除Jenkin中的节点(从属),清理所有脱机节点甚至删除所有节点?重置Jenkins服务器没有帮助,而且我在Jenkins API中找不到方法。 在我开始编写Selenium脚本之类的东西之前,请感谢任何想法。 非常感谢! 问题答案: 该脚本的注释部
问题内容: 由于某些性能原因,我试图找到一种仅选择所选节点中同级节点的方法。例如, 如果选择了inner1节点,是否可以访问其兄弟节点? 问题答案: 好吧…确定…先拜访父母,再拜访孩子。 或者…使用jQuery: 编辑:Cletus一如既往地鼓舞人心。 我进一步挖掘。这就是jQuery本质上如何获得兄弟姐妹的方式:
问题内容: 我想知道是否有可能以编程方式发现特定API的所有端点。 因此,例如,如果我使用浏览器或curl获取此URL:https : //api.twitter.com/1.1/ 我可能会收到类似以下内容的JSON响应: 当然,Twitter可以选择发布还是不发布这种格式。因此,作为一个附带问题,是否有任何Java或Java库可以自动映射和发布您在控制器中创建的API路由? 问题答案: 由于没有
因为我是在中配置序列化程序的,所以我不能在构造函数参数中传递。
我正在努力学习RCP中的TreeViewer。我为此写了一小段代码。 我的代码哪里有问题? 谢了!
问题内容: 在C#中,我发现了一种非常可爱的方法,该方法使您可以从指定控件中获取所有后代和所有THEIR后代。 我正在寻找JavaFX的类似方法。 我看到了我要使用的类,因为它是派生所有带有孩子的Node类的类。 到目前为止,这是我所拥有的(并且我还没有在Google上通过“ JavaFX从场景中获取所有节点”之类的搜索真正找到任何东西): 那么,如何确定N是否是父母(或从父母继承)呢?我说的对吗