Non vedo quasi alcun puntatore sul seguente problema relativo a Hibernate. Questo riguarda l'implementazione dell'ereditarietà utilizzando una singola tabella di database con una relazione genitore-figlio con se stessa. Ad esempio:Hibernate: relazione padre/figlio in una tabella singola
CREATE TABLE Employee (
empId BIGINT NOT NULL AUTO_INCREMENT,
empName VARCHAR(100) NOT NULL,
managerId BIGINT,
CONSTRAINT pk_employee PRIMARY KEY (empId)
)
Qui, il ManagerID colonna può essere nullo, o può indicare un'altra riga della Dipendente tavolo. La regola aziendale richiede che il Dipendente sia a conoscenza di tutte le sue segnalazioni e che sappia del proprio manager. Le regole aziendali consentono inoltre alle righe di avere gestore n. (l'amministratore delegato dell'organizzazione non ha un manager).
Come mappare questa relazione in Hibernate, la relazione standard molti-a-uno non funziona qui? In particolare, se voglio implementare le mie Entità non solo come classe Entity "Employee" corrispondente, ma piuttosto classi multiple, come "Manager", "Assistant Manager", "Engineer" ecc., Ognuna delle quali eredita dalla classe super entity "Dipendente" , alcune entità che hanno attributi che non si applicano effettivamente a tutti, ad esempio "Manager" ottiene Perks, altri no (la colonna della tabella corrispondente accetta null ovviamente).
Il codice di esempio sarebbe apprezzato (ho intenzione di utilizzare le annotazioni di Hibernate 3).
Dupe: http://stackoverflow.com/questions/1862457/hibernate3-self-referencing-objects – hobodave
@hobodave: Mi piacerebbe avere un esempio di codice che utilizza Annotazioni (su Hibernate 3), questa è l'intenzione. Sei d'accordo? – dchucks