gpt4 book ai didi

java - 保存关系实体不起作用

转载 作者:行者123 更新时间:2023-12-01 10:51:13 24 4
gpt4 key购买 nike

我是 Neo4J 的新手,正在使用 Spring 数据存储库。以下是域定义

@NodeEntity
public class Actor {
Long id;
private Set<Role> roles;
}

@RelationshipEntity(type="PLAYED_IN")
public class Role {
@GraphId private Long relationshipId;
@Property private String title;
@StartNode private Actor actor;
@EndNode private Movie movie;
}

@NodeEntity
public class Movie {
private Long id;
private String title;
}

并为每个实体类定义GraphRepository以下代码不保存RelationshipEntity

Actor actor = new Actor("actorName");
actor = actorRepository.save(actor);

Movie movie = new Movie("movieTitle");
movie = movieRepository.save(movie);

Role role = new Role(actor, movie, "roleTitle");
role = roleRepository.save(role);

我是否必须在 Actor 类中注释 roles 变量?
在保存 Actor 之前是否必须填充 roles 集合?如果我这样做,则 Role 上的属性不会保存。

最佳答案

是的,您必须在Actor实体中注释roles

如果您使用的是 neo4j-ogm 1.1.3 或更早版本,请确保在创建新角色时,将其添加到 Actor 中的 roles 集合中 实体。

如果您使用的是 neo4j-ogm 1.1.4-SNAPSHOT,您的代码应该可以运行(在您注释角色之后)

关于java - 保存关系实体不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33887477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com