Я хочу создать отношения в neo4j, где у человека есть список друзей. Я могу сделать это двумя способами, используя spring-data.
а) Создайте класс Person со списком, представляющим друзей, и аннотируйте его с помощью @Relationship.
@NodeEntity(label="Person")
public class Person {
@GraphId
private Long id;
private String firstName;
private String lastName;
private String email;
@Relationship(type = "FRIEND_WITH")
List<Person> friends;
}
б) Создайте объект Person без какого-либо списка и создайте отношение «FRIEND_WITH» с Cypher, например
@Query "CREATE (a)-[FRIEND_WITH]->(b)"
Каковы преимущества/недостатки обоих подходов?