Pessoal… desculpem se a pergunta for muito tola mas estou comecando a entender a usar o hibernate 3 com o ejb3 agora.
Bem estou criando minhas classes e mapeandoa-as no banco tranquilamente usando o annotations:
@Entity
public class Despesa {
@Id
@Column(name = “cod”)
private String codigo;
@Column(name = "tx_cod_proj")
private String codProjeto;
@Column(name = "tx_desc_proj")
private String descricaoProjeto;
@Column(name = "tx_cod_desp")
private String codDespesa;
@Column(name = "tx_desc_desp")
private String descricaoDespesa;
@Column(name = "nu_baseln_ini")
private double baselineInicial;
@Column(name = "nu_baseln_ant")
private double baselineAnterior;
@Column(name = "nu_baseln")
private double baseline;
@Column(name = "nu_desp_estm")
private double despesaEstimado;
@Column(name = "nu_desp_atu")
private double despesaAtual;
@Column(name = "dt_data")
private Date data;
Porem gostaria de criar uma chave primaria composta que neste caso seria cod,codDespesa e data porem nao sei nem achei como faco isso pois quando defino o @Id para os atributos citados ele nao trata os 3 cod,codDespesa e data como sendo uma chave composta e sim analisa cada um como sendo um id separado…
sera q fui claro?
no final o codigo ficou assim:
@Entity
public class Despesa {
@Id
@Column(name = “cod”)
private String codigo;
@Id
@Column(name = "tx_cod_proj")
private String codProjeto;
@Column(name = "tx_desc_proj")
private String descricaoProjeto;
@Column(name = "tx_cod_desp")
private String codDespesa;
@Column(name = "tx_desc_desp")
private String descricaoDespesa;
@Column(name = "nu_baseln_ini")
private double baselineInicial;
@Column(name = "nu_baseln_ant")
private double baselineAnterior;
@Column(name = "nu_baseln")
private double baseline;
@Column(name = "nu_desp_estm")
private double despesaEstimado;
@Column(name = "nu_desp_atu")
private double despesaAtual;
@Id
@Column(name = "dt_data")
private Date data;
e como falei ele nao trata essas 3 colunas como chaves compostas