私はスプリング・データneo4jバージョン4.1.2をボルト・ドライバ2.0.6で使用しています。私はエンティティ間の関係を壊すという問題に直面しています。Neo4j:リレーションシップを自動的に削除します
私は組織という名前のドメインを持ち、組織は多くのエンティティに属していますが、私はあまり言及していません。
組織スキーマ
public class Organization {
private String formalName;
private String shortName;
@Relationship(type = COUNTRY)
private Country country;
@Relationship(type = HAS_GROUP)
private List<Group> groupList = new ArrayList<>();
}
と国スキーマがある
public class Country {
@Relationship(type = HAS_HOLIDAY)
private List< CountryHolidayCalender> countryHolidayCalenderList;
}
私はそれが休憩国の休日の関係などのような国のすべての関係を壊し、組織を更新しています
組織の更新コードを入力しました
Organization unit = organizationGraphRepository.findOne(unitId);
unit.setFormalName(organizationGeneral.getFormalName());
unit.setShortName(organizationGeneral.getShortName());
organizationGraphRepository.save(unit);
私は間違っていることを見つけることができません。私はこの時点でこの種のバグを抱えていません。
おかげロードエンティティのための
'Organization'エンティティの読み込みに深度を指定しようとしましたか?例えば'organizationGraphRepository.findOne(unitId、2)' – nmervaillie
私はあなたの意見を持っています。組織によってIDで見つけたときの関係はほとんどなく、セーブ後はこれらの関係、休憩の残りしか更新しません。だから私は多くの関係データを更新する必要がある場合、私はすべての1つまたは他のソリューションのカスタムクエリを書く必要がありますか? –