@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