2015-10-25 15 views
7

ho il modello tipico: Impiegato ed è sottoclassi RegularEmployee e ContractEmployeeUtilizzando eredità entità jhipster

the typical model

come posso affrontare questo in jhipster? Ho fatto una strategia di ereditarietà JOINED in ibernazione. quello era un gioco da ragazzi. Ma non posso ottenere jhipster per salvare l'istanza di RegularEmployee nel database.

risposta

7

Beh, apparentemente era più facile di quanto pensassi.

esempio con InheritanceStrategy.JOINED

primo passo

generare il vostro tre classi dei dipendenti e sta sottoclassi RegularEmployee e ContractEmployee come se fossero classi separate, tranne per il fatto che ha vinto stiamo ripetendo gli attributi ereditati nelle sottoclassi.

Secondo passo

Aggiungere le annotazioni sulla classe Employee per dire ibernazione che sta andando ad essere la classe di super-you can find how to do that here

RIMUOVERE le annotazioni di tipo generazione id perché le vostre sottoclassi istanze di avere la stesso ID dell'istanza genitore.

@Id // this should be gone 
@GeneratedValue(strategy = GenerationType.AUTO) // this should be gone 
@Column(name="id")// this should be gone 
private Long id;// this should be gone 

Terzo passo

aggiungere il estende Employee al java sottoclassi.

Quarto Passo

qui si dovrebbe essere in grado di utilizzare l'ereditarietà $ portata sul angolare, ma sono nuovi ad esso, quindi non so come farlo sulla struttura app che jhipster utilizzasarò grato se qualcuno mi dice come migliorare questo

sul contractEmployee-dialog.html e regularEmployee-dialog.html aggiungere i campi ereditati da Employee, in modo che y puoi generare un modello che può essere salvato correttamente in ibernazione, altrimenti otterrai errori di validazione.

quinto passo

costruire e testare.

+1

Cosa succede se aggiorno 'Regular_Employee' usando jdl-studio? Perdo i miei aggiornamenti manuali? – Halil

+0

Non ho usato JDL-Studio da un po 'di tempo, ma suppongo che durante la fase di generazione del codice avrete dei conflitti che dovrete risolvere da soli. – Pacu