在一个查询中创建节点和关系:Spring数据Neo4j
我正在尝试使用Spring数据Neo4j使用Neo4j创建新的节点和关系。我的用例是在两个用户节点之间添加朋友关系。这可以归结为:在一个查询中创建节点和关系:Spring数据Neo4j,neo4j,spring-data-neo4j,spring-data-graph,Neo4j,Spring Data Neo4j,Spring Data Graph,我正在尝试使用Spring数据Neo4j使用Neo4j创建新的节点和关系。我的用例是在两个用户节点之间添加朋友关系。这可以归结为: User user1 = userRepo.findByPropertyValue("userId1", userId1); User user2 = userRepo.findByPropertyValue("userId2", userId2); if(user1 == null){ createUserObject(userId1); } if(u
User user1 = userRepo.findByPropertyValue("userId1", userId1);
User user2 = userRepo.findByPropertyValue("userId2", userId2);
if(user1 == null){
createUserObject(userId1);
}
if(user2 == null){
createUserObject(userId2);
}
user1.isFriend(user2);
userRepo.save();
因此,这包括对DB(findByPropertyValue)的2个调用。这是正确的还是有其他方法可以做到这一点?也许把整件事都集中到一个请求中
谢谢..您可以通过一个密码查询同时执行这两项操作:
START user1=node:User(userId={userId1}),
user2=node:User(userId={userId2})
CREATE UNIQUE (user1)-[:FRIEND]-(user2);
用户id作为参数在映射中传递
您还可以为此使用带注释的存储库方法