1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
@Entity
@Table(name = "Personne")
@Inheritance(strategy=InheritanceType.JOINED)
public class Personne
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "Id", updatable = false, nullable = false)
protected Long id;
@Column(name="nom")
protected String nom;
public String getNom() {return nom;}
public void setNom(final String nom){this.nom = nom;}
}
@Entity
@Table(name = "Salarie")
public class Salarie extends Personne
{
@Column(name = "dateNaissance",nullable = true)
@Temporal(TemporalType.DATE)
private Date dateNaissance;
public Date getDateNaissance() {return dateNaissance;}
public void setDateNaissance(Date dateNaissance) {this.dateNaissance = dateNaissance;}
}
@Entity
@Table(name = "Stagiaire")
public class Stagiaire
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "Id", updatable = false, nullable = false)
protected Long id;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "Id_Personne", nullable = true)
private Personne personne;
}
@Entity
@Table(name = "Commercial/Formateur")
public class Commercial/Formateur extends BaseEntity
{
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "Id", updatable = false, nullable = false)
protected Long id;
@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "Id_salarie", nullable = true)
private Salarie salarie;
} |
Partager