0

私は 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);

クラスでroles変数に注釈を付ける必要がありますか? 保存する前にコレクションに データを入力する必要がありますか? そうすると、プロパティは保存されません。Actor
rolesActorRole

4

1 に答える 1

1

rolesはい、Actorエンティティに注釈を付ける必要があります。

neo4j-ogm 1.1.3 以前のバージョンを使用している場合は、新しいロールを作成するときに、これをエンティティのコレクションrolesに追加してください。Actor

neo4j-ogm 1.1.4-SNAPSHOT を使用している場合、コードは機能するはずです (注釈を付けた後roles) 。

于 2015-11-24T08:23:12.753 に答える