Pessoal estou com o seguinte problema eu tenho uma entidade usuario e nessa entidade temos vários telefones ou seja eu tenho uma ArrayList desse tipo
ArrayLIst <String> telefones
minha dúvida é como eu irei passar via hibernate essa lista de objetos do tipo String para o meu banco de dados. Como isso poderia ser feito, existe algum tipo de dados
no sql que seja compativel com o arraylist??
Eu criaria uma tabela associativa ou uma nova entidade Telefone usando os Annotations do Hibernate.
Isso no java
Então eu criaria uma entidade telefone com esses campos
telefone pessoal
telefone trabalho
telefone opcional
e outra entidade usuário que teria
nome
cpf
senha
já no banco de dados
iria ter uma tabela telefone, tabela usuário e outra tabela Usuário Telefone que associa o id de cada usuário a cada telefone.
Concordo com nosso amigo Henrique.tenorio. Você precisa criar a entendide telefone, ou melhor, crie uma entidade Contato, onde você terá uma referência a entidade Usuario.
O legal de criar essa entidade Contato é que ela poderá conter todos os tipos de contato, como telefone, email, fax, celular, etc.
Ai você anota sua lista de telefones com @ManyToOne referenciando esse objeto Contato
Um Exemplo simples.
public class Usuario {
@ManyToOne
private List<Contato> listaTelefone;
.
.
.
}
public class Contato {
@Id
private Integer id;
// Aqui voce pode criar um enum para os tipos de contato (Telefone, Email, ...)
private TipoContatoEnum tipoContato;
private String descricao;
private Usuario usuario;
.
.
.
}
Espero que lhe ajude …
[]s