@ElementCollection(fetch = FetchType.EAGER)
@CollectionTable(name = "entity_items",
joinColumns = {@JoinColumn(name = "id_entity")})
@Column(name = "item_description")
private List<String> items;
retornava cada item da lista repetido 7 vezes, embora as linhas da tabela no banco de dados continuavam como deveriam.2 Soluções
Ao remover FetchType.EAGER do mapeamento, a coleção volta a exibir os items normalmente.
Outra alternativa que também funciona é utilizar a interface Map (que remove duplicados instantaneamente) ao invés de List. O inconveniente de Map, se você estiver usando Java Server Faces, é que você não poderá acessar seus elementos da view, pelo menos não diretamente!
No comments:
Post a Comment