Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在嵌入式neo4j中自动创建索引?_Java_Indexing_Neo4j - Fatal编程技术网

Java 如何在嵌入式neo4j中自动创建索引?

Java 如何在嵌入式neo4j中自动创建索引?,java,indexing,neo4j,Java,Indexing,Neo4j,我想对特定节点的属性进行自动索引。 根据此文档,我们必须提供属性名称,并将其编入索引。 我有两个节点node1和node2,它们的属性与name相同。我只想在节点node1上的属性name上建立索引,而不是在node2上建立索引。我如何在运行时做到这一点而不使用密码 任何帮助都将不胜感激。自动索引(顾名思义)会自动为给定的属性名编制索引 如果只想为特定节点显式索引name,那么使用模式索引是有意义的。这要求node1和node2带有不同的标签 如果这不是一个选项,那么您可以使用手动索引,并决定

我想对特定节点的属性进行自动索引。 根据此文档,我们必须提供属性名称,并将其编入索引。

我有两个节点node1node2,它们的属性与name相同。我只想在节点node1上的属性name上建立索引,而不是在node2上建立索引。我如何在运行时做到这一点而不使用密码

任何帮助都将不胜感激。

自动索引(顾名思义)会自动为给定的属性名编制索引

如果只想为特定节点显式索引
name
,那么使用模式索引是有意义的。这要求
node1
node2
带有不同的标签

如果这不是一个选项,那么您可以使用手动索引,并决定每个节点应该指向索引的内容。在Cypher中无法写入手动索引,您需要使用JavaAPI或相应的API

我总结了Neo4j中不同类型的索引

自动索引(顾名思义)会自动为给定的属性名编制索引

如果只想为特定节点显式索引
name
,那么使用模式索引是有意义的。这要求
node1
node2
带有不同的标签

如果这不是一个选项,那么您可以使用手动索引,并决定每个节点应该指向索引的内容。在Cypher中无法写入手动索引,您需要使用JavaAPI或相应的API


我总结了Neo4j中不同类型的索引

我找到了使用java代码在特定节点的属性上创建模式索引的neo4j文档

在这里添加代码。这可能会帮助像我这样的人:)


我找到了使用java代码在特定节点的属性上创建模式索引的neo4j文档

在这里添加代码。这可能会帮助像我这样的人:)


谢谢你的回答,Stefan。我想使用JavaAPI而不是问题中提到的Cypher实现模式索引。我找到了同样的neo4j文档。你的问题没有提到你正在使用标签。没有它们,就不能使用架构索引。另外,你的问题没有提到你正在寻找一个java API解决方案——所以我假设它是独立于平台的——很抱歉误解。谢谢Stefan的回答。我想使用JavaAPI而不是问题中提到的Cypher实现模式索引。我找到了同样的neo4j文档。你的问题没有提到你正在使用标签。没有它们,就不能使用架构索引。另外,您的问题没有提到您正在寻找java API解决方案——因此我假设它是独立于平台的——很抱歉误解。
IndexDefinition indexDefinition;
try ( Transaction tx = graphDb.beginTx() ){
Schema schema = graphDb.schema();
indexDefinition = schema.indexFor( DynamicLabel.label( "node1" ) )
        .on( "name" )
        .create();
tx.success();
}