Hibernate - @ElementCollection - Comportamento estranho de exclusão / inserção
@Entity
public class Person {
@ElementCollection
@CollectionTable(name = "PERSON_LOCATIONS", joinColumns = @JoinColumn(name = "PERSON_ID"))
private List<Location> locations;
[...]
}
@Embeddable
public class Location {
[...]
}
Dada a seguinte estrutura de classes, quando tento adicionar um novo local à lista de Locais da Pessoa, sempre resulta nas seguintes consultas SQL:
DELETE FROM PERSON_LOCATIONS WHERE PERSON_ID = :idOfPerson
E
A lotsa' inserts into the PERSON_LOCATIONS table
O Hibernate (3.5.x / JPA 2) exclui todos os registros associados para a Pessoa especificada e reinsere todos os registros anteriores, além do novo.
Tive a ideia de que o método equals / hashcode em Location resolveria o problema, mas não mudou nada.
Todas as dicas são apreciadas!