初始Graph Database02-Neo4j的JavaAPI使用
Neo4j的JavaAPI
Neo4j的JavaAPI的使用
- 创建空的maven项目
- 引入驱动依赖
<dependency>
<groupId>org.neo4j.driver</groupId>
<artifactId>neo4j-java-driver</artifactId>
<version>5.7.0</version>
</dependency>
- 编写测试
注意:最新版本的驱动需要JDK17
- 创建节点
public class App {
private static final Driver driver;
static {
driver = GraphDatabase.driver("bolt://localhost:7687", AuthTokens.basic("neo4j", "Aa111111"));
}
public static void main(String[] args) {
try {
// 创建节点
create();
create("test");
} finally {
driver.close();
}
}
/**
* 创建节点
*/
public static void create() {
try (Session session = driver.session()){
int r = session.executeWrite(tx -> {
Query query = new Query("CREATE (n:Person {name: 'Tom Hanks'}) return id(n)");
Result result = tx.run(query);
return result.single().get(0).asInt();
});
System.out.println(r);
}
}
/**
* 创建节点包含参数
*/
public static void create(String name) {
try (Session session = driver.session()){
int r = session.executeWrite(tx -> {
Query query = new Query("CREATE (n:Person {name: $name}) return id(n)", parameters("name", name));
Result result = tx.run(query);
return result.single().get(0).asInt();
});
System.out.println(r);
}
}
}
- 创建关系
public static void createRelation() {
try (Session session = driver.session()) {
String r = session.executeWrite(tx -> {
Query query = new Query("match (n1:Person), (n2:Person) where n1.name = 'zhangsan' and n2.name='lisi' create (n1)<-[r:Friend]-(n2) return r");
Result result = tx.run(query);
return result.single().get(0).asMap().toString();
});
System.out.println(r);
}
}
- 查询节点
public static List<String> queryPersonNames() {
try (Session session = driver.session()) {
return session.readTransaction(tx -> {
Query query = new Query("MATCH (n:Person) RETURN n.name");
Result result = tx.run(query);
List<String> names = result.stream()
.map(r -> r.get(0).asString())
.collect(Collectors.toList());
System.out.println(names);
return names;
});
}
}
- 删除节点
public static void delete() {
try (Session session = driver.session()) {
int r = session.executeWrite(tx -> {
Query query = new Query("match(p:Pet) delete p return id(p) ");
Result result = tx.run(query);
return result.single().get(0).asInt();
});
System.out.println(r);
}
}
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhfhbbej
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01