Спящий Один ко многим - PullRequest
       20

Спящий Один ко многим

1 голос
/ 13 сентября 2010

Согласно документации по спящему режиму:

Чтобы отобразить двунаправленный канал «один-ко-многим» со стороной «один-ко-многим» в качестве стороны-владельца, вы должны удалить элемент mappedBy и установить «многие в один» @JoinColumn как вставляемые и обновляемые в ложь. Это решение не оптимизировано и создаст несколько дополнительных операторов UPDATE.

@Entity  
public class Troop {  
    @OneToMany  
    @JoinColumn(name="troop_fk") //we need to duplicate the physical information  
    public Set<Soldier> getSoldiers() {  
    ...  
}  

@Entity  
public class Soldier {  
    @ManyToOne  
    @JoinColumn(name="troop_fk", insertable=false, updatable=false)  
    public Troop getTroop() {  
    ...  
}  

Мои вопросы:

  1. В чем преимущество такой настройки. Почему бы не создать сторону Manytonone как сторону-владельца
  2. Зачем в этой настройке нужны эти два значения: вставляемый = ложь, обновляемый = ложь
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...