Избыточные операторы обновления Hibernate один-ко-многим - PullRequest
0 голосов
/ 11 мая 2018

TableA является родителем TableB, и они имеют отношение один ко многим. FK в таблице B - это TableA_Id.

Соответствующие классы сущностей A и B. В классе сущности А у меня есть следующий код:

@OneToMany(cascade=CascadeType.ALL)
@JoinColumn(name=”TableA_Id”,nullable=false)
List<B> bs = new ArrayList<>();

В моем основном методе я создаю экземпляр A и два экземпляра B, которые затем добавляю в ArrayList в A и затем выполняю session.save A.

В сгенерированных запросах я вижу три оператора вставки и два оператора обновления - операторы обновления кажутся избыточными. Когда я смотрю на переменные хоста (параметры) в журнале, те же значения для TableA_Id, которые были указаны в 2 вставках для вставок таблицы B, повторяются в операторах Update.

Есть мысли о том, почему существует такое поведение?

...