Olá Pessoal, bom dia!
Tenho uma classe que representa um funcionário, este por sua vez possui uma função.
Tenho uma classe Funcionário, e uma Classe Função.
Beleza, eu consigo cadastrar e atualizar normalmente os dados, o problema é que quando eu mando atualizar os dados, ele duplica os registros na tabela Funcao na base de dados.
Por exemplo, na tabela Funcao tem as chaves para Cargo e Faixa Salarial, e elas vão se duplicando cada vez que atualizo o funcionário.
Segue minhas classes
@Entity
@PrimaryKeyJoinColumn(name = "idBeneficiario")
public class Funcionario extends Beneficiario {
/* ... */
@OneToOne(fetch=FetchType.LAZY, cascade=CascadeType.ALL)
@JoinColumn
private Funcao funcao;
/* ... */
}
@Entity
public class Funcao {
/* ... */
@OneToOne(cascade={CascadeType.PERSIST, CascadeType.REFRESH})
@JoinColumn
private Cargo cargo;
@OneToOne(cascade={CascadeType.PERSIST, CascadeType.REFRESH})
@JoinColumn
private FaixaSalarial faixaSalarial;
/* ... */
}
Acredito que o problema esteja no CascadeType.
Alguém pode me dar alguma dica?
Desde já agradeço!