Hibernate Mapping Enums to MySQL

Katzehuhn

Erfahrenes Mitglied
Also es geht noch immer um dieses Thema: http://www.tutorials.de/forum/java/...en-eines-objekts-per-schleife-durchgehen.html

Derweil lief alles Recht gut nur die Abbildung der enums will einfach nicht richtig klappen, hab schon wie ein verrückter gegoggelt.
Also:
Da ich PHP als Administrative Oberfläche verwenden möchte, benötige ich die Enums als Datensätze in eigenen Tabellen um mir diese per Abfrage ausgeben zu lassen. Idealerweise als MySQl - Enum Datentyp.

Sprich die Tabellen sollten inetwa so aussehen, dass sie den Namen der Java-Enums als unique ID, als Datensätze beinhalten.
So sollte mein jetzt ausgedachtes Enum
Elemente{
FEUER,WASSER,WIND..;
}
in MySQL inetwa so aussehen:
Tabelle: enum_elemente;
Spalten: element idealerweise vom Typ Enum(FEUER,WASSER..)
Datensätze: FEUER,WASSER, WIND

Da ich in meinen Projekt wirklich sehr viele Enums verwende, möchte ich das das abgleichen mit der Datenbank möglichst zeitsparend abläuft.
Hab in Hibernate dies anhand dieses Beispiels mal zum laufen gebracht. Jedoch bildet er mir mein Enum dort als Varchar ab, ohne eine Tabelle anzulegen (was auch klar ist).
Wenn ich jetzt versuch die enum_tabelle per .hbm.xml abzubilden, findet er mir die notwendige getter Methode nicht, was auch klar ist, da die Methode name() nur in den Subklassen zur Verfügung steht.
Jetzt hab ich noch irgendwo gesehen das man dies auch irgendwie per annotations lösen kann. Da ich jedoch soviele Enums hab, wäre mir diese Variante und auch die .hbm.xml Variante ziemlich unsynpatisch.

Jemand ne Idee wie ich dies gscheit hinbekommen kann? Thx xD
 

Neue Beiträge

Zurück