通过this博客帖子获取想法,我实施了DBpedia(.ttl格式) - neo4j批量导入程序。因为导入部分没有问题我无法识别如何编写查询(例如:检查db中是否存在具有特定属性的节点等)来创建neo4j数据库。试图在那里使用GraphDatabaService
,但这是不可能的,无法在neo4j official website找到相关信息。
答案 0 :(得分:0)
我很惊讶网络无法向您返回有关如何使用neo4j以及专门编写查询的一些信息。
GraphDatabaseService的API文档位于:
http://neo4j.com/docs/stable/javadocs/org/neo4j/graphdb/GraphDatabaseService.html
此外,本手册中的一节介绍了如何在Java中使用neo4j嵌入模式:
http://neo4j.com/docs/stable/tutorials-java-embedded-hello-world.html
基本上,您需要将操作包装在事务中:
try (Transaction tx = database.beginTx()) {
database.createNode();
tx.success();
}
按标签和属性查找节点与上一操作一样简单:
try (Transaction tx = database.beginTx()) {
Node user = database.findNode(DynamicLabel.label("User"), "login", "john@doe.com");
tx.success();
}
如果您在服务器模式下运行Neo4j,您实际上可以编写Cypher查询,为您选择的语言选择驱动程序:
http://neo4j.com/developer/language-guides/
完整的Cypher指南随时可供您阅读:
http://neo4j.com/docs/stable/cypher-query-lang.html
您还可以关注免费在线课程:
http://neo4j.com/graphacademy/online-training/
您还可以在此处找到大量策划的Neo4j资源: