[QUOTE=SlaterB]heißt eigene Klasse auch eigene DB-Tabelle? das scheint ja etwas Overkill,
aber noch ist auch nicht gesagt wieviele verschiedene Keywords geplant/ möglich neu hinzukommend,
[/QUOTE]
Das weiß ich leider auch nicht. Letztlich liegt es am Nutzer, da er zu seinem Content (Einträge) - wie hier im Forum quasi
eigene Tags anfügt, welche ihn somit die Einträge schneller finden lassen bzw. er sie somit auch kategorisch einordnen kann.
eine Tabelle/ Klasse (=Enum?) mit EINTRÄGEN an verschiedenen Tags ist eine annehmbare Variante,
die ich bei dir noch nicht herauslese,
dazu eine Verbindungstabelle für die m:n-Verknüpfung zwischen Objekten und Tags, darin dann Fremdschlüsselcheck normal möglich,
Weiß nicht so ganz, wie du das meinst. Kommt der Variante nahe, wo ich die Keywords in einer eigenen Tabelle halte.
Die ‚Content‘-Einträge nehmen mit der Zeit der Nutzung des Programms zu und eventuell nehmen auch die Keywords zu
(entscheided schließl. der Nutzer).
wenn ein Objekt nur begrenzte Zahl Tags haben kann dann reichen evtl. auch n Spalten direkt in der Objekt-Tabelle,
bei vielen Objekten/ Objekttabellen wiederum kann man sich das sparen wollen (mehrfach n Spalten),
nur die Verbindungstabelle, mit global eindeutiger Id oder noch Spalte für Objekttyp
Wie gesagt eigntl. will ich das dem Nutzer überlassen. Im Grunde ist da das Problem, wenn ich N setze ich das für einige
Nutzer zu niedrig ansetzen könnte. Andererseits ist ein zu großen N dann eher suboptimal (was Speicher angeht), wenn
ein Nutzer dieses nicht nutzt und dann N-M (M ziemlich klein) Tags nicht belegt wären.
H2-DB klingt nach normalen SQL, wie kommen da Listen ins Spiel? Listen in Java, Umsetzung dem Framework überlassen?
Im Grunde ja. Die Klasse (nennen wir sie) „Eintrag“ hat also eine „List“ , welche dann optimalerweise vom ORM
mit geeigneten Annotations in eine Tabelle KEYWORDS ausgelagert wird.
Im Grunde stelle ich mir das so vor:
Einträge haben Tags (in einer der o.g. Form). ORM-Lib erzeugt Tabelle für Einträge und Tabelle für Keywords. Tabelle mit Einträgen
hat FK für Keyword-Tabelle.
Ich erhoffe mir dadurch eine effiziente Selektion der Einträge nach Keywords.
ein simpel abgelegter String in der DB ins Programm importiert kann man aber zur Liste machen,
wenn man es erst im Programm sucht, dann ausreichend
Ja, eventuell muss ich noch einmal ganz genau überdenken, welche Möglichkeiten ich da in Erwägung ziehe.
Direkt Daten über die DB zu selektieren erscheint mir halt am Effizientesten.
Im Programm kann man aber ein String mit einheitlichen Trennzeichen zwischen den Keywords sehr einfach
in ein Array (bzw. Liste) überführen.
Ja, ich denke auch, dass es am Effizientesten ist und Redundanzen verhindert. Eventuell muss ich die SQL-Anweisungen auch fest reinhacken
und auf das ORM verzichten. Ich meine auch mal gehört zu haben, dass mit ORM Änderungen eher ein schwieriges Thema sind.
Danke schon einmal für die Anregungen
BL