Spring 데이터 Neo4j를 사용하여 Java 엔티티를 Neo4j 데이터베이스에 작성하고 있습니다. 객체 모델은 다소 일반적인 것입니다 :수퍼 클래스의 일반 관계
public abstract class AbstractNode {
@GraphId
private Long id;
@Index(primary = true, unique = true)
private String uuid;
@Relationship(type = "CONTAINS")
private Set<AbstractNode> containsNode;
...
}
@NodeEntity
public class Country extends AbstractNode { ... }
@NodeEntity
public class Region extends AbstractNode { ... }
@NodeEntity
public class City extends AbstractNode { ... }
나는 1 개의 국가를 만들고 있습니다. 이 나라에 1 지역을 넣고 지역에 1 도시를 넣습니다. 그 후, 영구 전체 그래프를 만들기 위해 (물론, Neo4jRepository에서 상속 내 자신의 인터페이스) Neo4jRepository.save(country)
전화 : 임베디드 Neo4j의 로그에서
Country -> Region -> City
을, 나는 볼 수 한 나라, 한 지역 1 개의 시가 지속되었습니다.
이제 새로운 세션에서 국가를로드합니다. 결과는 1 개 국가의 1 개 국가입니다.
Country -> Region -> Country
가 어떻게 같은 일반 객체 그래프를 유지할 수 있습니다 :하지만 지역은 도시 그러나 국가를 포함하지 않는 이유는 무엇입니까?
감사합니다. 그로 인해 문제가 해결되었습니다. – mre