Boa tarde pessoal! 
Seguinte, utilizando herança, tenho as classes:
pai = Funcionario
filhas = Administrativo e Docente
Fiz o mapeamento objeto-relacional com o Hibernate e gerei as tabelas. Até aí, tudo ok!!
Porém, estava dando uma lida num artigo sobre a velha discussão de composição vs. herança:
http://javaboutique.internet.com/tutorials/Inherit_Compose/
Implementei estas mesmas classes utilizando o conceito de composição:
@Entity
public class Funcionario implements Serializable{
@Id
@GeneratedValue
private Long idPessoa;
private String nome;
private String endereco;
private String telefone;
private double salario;
//getters and setters
}
@Entity
public class Administrativo {
@Id
@GeneratedValue
private Long idAdministrativo;
private Funcionario funcionario;
private double adicionalNoturno;
//getters and setters
}
@Entity
public class Docente{
@Id
@GeneratedValue
private Long idDocente;
private Funcionario funcionario;
private int horasAula;
//getters and setters
}
:?: Dúvida: existe alguma notação específica do Hibernate para tratar de composição??
Ou neste caso teria que utilizar as notações @OneToMany, ou @ManyToOne? Acho que ficaria estranho se tiver que ser desta forma, pois acabaria gerando relacionamentos sem sentido, do tipo Funcionario tem Docente, algo assim… :roll:
O que acham?
