Ich modelliere meine erste Spring Data Neo4j-App und frage mich, ob ich @RelationshipEntity-Klassen unterklassieren könnte - 1) kann es gemacht werden, und 2) ist es eine gute Idee?Spring Data Neo4j @RelationshipEntity-Unterklassen?
Hier ist ein Beispiel für das, was ich über die Verwendung von RSS denke.
A Feed
hat viele Entry
s und es gibt 3 Arten von Einträgen:
- Original-Eintrag (neue Inhalte)
- gerebloggt Inhalt
- Zufrieden mit Inhalt (effektiv ein degenerierter Reblog)
Ein Feed könnte wie folgt aussehen: @Relationship List<Entry> entries;
wo Liked ist ein Sub Klasse von Reblog, die eine Unterklasse von Entry ist.
Dies scheint natürlicher gegeben RelationshipEntities sind Objekte erste Klasse: @Relationship(type="Content", Relationship.OUTGOING) List<Entry> entries; ... @RelationshipEntity(type="Content") public class Content { ... @RelationshipEntity(type="RebloggedContent") public class RebloggedContent extends Content { ... @RelationshipEntity(type="LikedContent") public class LikedContent extends Content { ...
Wie gesagt, dies ist mein erster Neo4j app, damit ich weiß nicht, ob eine dieser Ideen alle gut ist.
Aus einer Abfrage Sicht möchte ich Fragen zu beiden bestimmten Arten (oder Kombinationen von Typen) von Entry
und Entry
s als Ganzes stellen.
Zeiger auf Design/Modellierung Ideen sind willkommen.