0
respostas

Duvida com mapeamento de classes

Estou precisando de uma ajuda para identificar como faço o mapeamento correto de três classes sendo elas a Pessoa, Endereço e Contato, neste primeiro momento uma Pessoa terá apenas um Endereço e um Contato. Meu objetivo com estas classes e que tanto a endereço quanto a contato sejam apenas um complemento de pessoa mas quero colocar separadamente para validações e dividir melhor a manutenção do código.

public class Pessoa {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private String nomePessoa;

private TipoPessoa tipoPessoa;

private Endereco endereco;

private Contato contato;
private Blob Observacao;




public Pessoa() {
}


public Pessoa(Integer id, String nomePessoa, TipoPessoa tipoPessoa, Endereco endereco, Contato contato,
        Blob observacao) {
    super();
    this.id = id;
    this.nomePessoa = nomePessoa;
    this.tipoPessoa = tipoPessoa;
    this.endereco = endereco;
    this.contato = contato;
    Observacao = observacao;
}


public String getNomePessoa() {
    return nomePessoa;
}
public void setNomePessoa(String nomePessoa) {
    this.nomePessoa = nomePessoa;
}
public TipoPessoa getTipoPessoa() {
    return tipoPessoa;
}
public void setTipoPessoa(TipoPessoa tipoPessoa) {
    this.tipoPessoa = tipoPessoa;
}
public Endereco getEndereco() {
    return endereco;
}
public void setEndereco(Endereco endereco) {
    this.endereco = endereco;
}
public Integer getId() {
    return id;
}
public Contato getContato() {
    return contato;
}
public void setContato(Contato contato) {
    this.contato = contato;
}
public Blob getObservacao() {
    return Observacao;
}
public void setObservacao(Blob observacao) {
    Observacao = observacao;
}

}

public class Endereco {


private String logradouro; 
private String numero;
private String complemento;
private String cep;
private String bairro;
private String cidade;
private String uf;


public String getLogradouro() {
    return logradouro;
}
public void setLogradouro(String logradouro) {
    this.logradouro = logradouro;
}
public String getNumero() {
    return numero;
}
public void setNumero(String numero) {
    this.numero = numero;
}
public String getComplemento() {
    return complemento;
}
public void setComplemento(String complemento) {
    this.complemento = complemento;
}
public String getCep() {
    return cep;
}
public void setCep(String cep) {
    this.cep = cep;
}
public String getBairro() {
    return bairro;
}
public void setBairro(String bairro) {
    this.bairro = bairro;
}
public String getCidade() {
    return cidade;
}
public void setCidade(String cidade) {
    this.cidade = cidade;
}
public String getUf() {
    return uf;
}
public void setUf(String uf) {
    this.uf = uf;
}

}

public class Contato {

private String email;
private String celular;


public String getEmail() {
    return email;
}

public void setEmail(String email) {

        this.email = email;



}

public String getCelular() {
    return celular;
}

public void setCelular(String celular) {
    this.celular = celular;
}

}