我有一些实体需要使用eager fetch。在浏览此处之后,将fetch类型设置为eager时,似乎这是一个已知问题。
有没有办法消除重复?我无法使用集合,因为我在一些equals()和hashCode()中遇到了很多问题(其中一些元素是唯一可以识别它们的原因是id,而不是业务键)。 / p>
现在我正在使用PrePersist和PostLoad消除重复项,例如
@PostLoad
@PrePersist //FIXME best way to handle this?
public void removeDuplicates() {
Set<Role> noDupesRoles = new HashSet<Role>();
noDupesRoles.addAll(roles);
roles.clear();
roles.addAll(noDupesRoles);
}
这显然阻碍了性能,我想知道是否有更好的方法来返回没有重复的列表。