quarta-feira, 14 de abril de 2010

Hibernate Annotations: Mapeando coleções de tipos primitivos

Um exemplo básico de mapeamento de coleções para tipos primitivos pode ser feito utilizando um List de String.

O Hibernate pode detectar automaticamente o tipo do elemento se você usar coleções genéricas. Se não, é necessário identificar o tipo do elemento com o atributo "targetElement":

@org.hibernate.annotations.CollectionOfElements(
    targetElement = java.lang.String.class
)

Para persistir os valores de sua lista, é necessário criar uma nova tabela no banco. A tabela que será criada, no exemplo abaixo, terá o nome de "CirurgiasPrevias" e possuirá um campo de chave estrangeira chamada "cdCirurgiasPrevias" (definido pelo @JoinColumn) e terá um campo chamado "cirurgiasPrevias" (definido pelo @Column).

@CollectionOfElements(fetch=FetchType.LAZY)
@JoinTable(
    name = "CirurgiasPrevias",
    joinColumns = @JoinColumn(name = "cdCirurgiasPrevias")
)
@Column(name = "cirurgiasPrevias")
private List<string> cirurgiasPrevias;

O exemplo acima foi baseado no livro "Java Persistence with Hibernate". Que pode ser baixado na integra aqui.

Palavras chave: Hibernate, Annotations, List, mapeamento de coleções

Nenhum comentário:

BuscaPé, líder em comparação de preços na América Latina
 
BlogBlogs.Com.Br