1
votes

Given I have two entity: Person and Company, and there are multiple relationships between them:

Person - Company:

  1. The person can be the employee of the company
  2. The person can be the shareholder of the company
  3. The person can be the legal person of the company

Company - Company:

  1. The company can be the legal of the company
  2. The company can be the shareholder of the company

enter image description here

So how to modeling this in spring data neo4j?

What I tried is make 3 relationship types: EMPLOY, INVEST, LEGAL, each relationship type with the Company as the StartNode and the person as the EndNode, then in company and person, keep these relationships with the "UNDIRECTED" direction, just same as the diagram present, but always get the stackoverflow error when saving and searching.

1
Can you please upload your code? Your question is unclear ?Afridi
Please upload your code and try to make it as minimal as possible to reproduce the issue. Also see stackoverflow.com/help/mcve.František Hartman
I already described the codes in the question actually.Liping Huang
The question is too broad. Please share a project demonstrating the issue(s).nmervaillie

1 Answers

0
votes

Yes, now here is the solution in github, all the classes are house in sample.spring.data.neo4j package, and the the corresponding test sample.spring.data.neo4j.repositories.CompanyRepositoryTest

The big issue at the beginning is it always throws the StackOverFlow exception which is due the the lombok annotation, after remove all the lombok annotations and use the plain getter/setter, everything goes well.