У меня есть следующий код:
@OneToOne(cascade = ALL)
private SquadMember commander;
@OneToOne(cascade = ALL)
private SquadMember lieutenant;
@OneToMany(orphanRemoval = true, cascade = REMOVE, mappedBy = "squad")
private Set<SquadMember> memberList = new LinkedHashSet<>();
Когда я добавляю командира или лейтенанта, они оказываются в таблице SquadMember, а когда я извлекаю memberList из базы данных, включаются командир и лейтенант в memberList (в основном дублируется, поскольку они находятся в отряде как командир / лейтенант, но также как член).
Как я могу это исправить, чтобы командир / лейтенант никогда не появлялся в memberList при извлечении из базы данных ?
Сообщения, которые я уже просматривал, но не нашел ответа: JPA OneToOne и OneToMany на одном объекте