Ich wollte wissen, was die Community als "Best Practices" in Bezug auf das Zuordnen von Klassenhierarchien mit Spring JDBC betrachtet.Spring JDBC RowMapper mit Klasse Hierarchies
Wir haben nicht die Möglichkeit, ein vollwertiges ORM-Tool zu verwenden, jedoch verwenden wir die Spring-JDBC, um die langweilige Natur von JDBC zu verringern. Eine Klasse, die wir sehr regelmäßig nutzen, ist der BeanPropertyRowMapper für seine Benutzerfreundlichkeit und die Möglichkeit, von unserer Ergebnismenge aus Zugriff auf den Typ insensitive Bean-Eigenschaften zu erhalten.
Ich habe eine Klassenhierarchie, die alle Zuordnungen zurück zu einer einzigen Tabelle (unter Verwendung der Table-per-Hierarchy-Ansatz für diese kleine Klassenhierarchie). Daher enthält die Tabelle eine classId-Spalte, die verwendet werden kann, um zu bestimmen, welche Klasse tatsächlich instanziiert werden soll. Ex. 1 = Manager, 2 = Mitarbeiter, 3 = Auftragnehmer. Alle diese sind "Leute", aber jede Unterklasse von Person hat ein paar Attribute, die für ihre Klasse einzigartig sind.
Mein erster Gedanke ist es, eine Unterklasse von BeanPropertyRowMapper zu erstellen und diese Logik zu injizieren, um zu sagen: "Wenn Spalte A = 1 dann instanziiere einen Manager und mache dann deine Nominalbindung".
Scheint dies ein vernünftiger Ansatz? Gibt es noch andere Vorschläge, die Leute für Sie gemacht haben?
Vielen Dank im Voraus für Ihre Antworten,
Justin N.
Danke für die Antwort. Das war es, was ich getan habe! Gut, um eine Bestätigung zu bekommen. – jnt30