Каскадное обновление Hibernate (inverse / mappedBy) - PullRequest
0 голосов
/ 20 января 2012

У меня есть 2 объекта:

class Customer
{
    @OneToMany(mappedBy="customer", fetch=FetchType.LAZY, cascade={CascadeType.ALL})
    @JoinColumn(name="ORDER_ID", nullable=false)
    private Set<Order> orders;
}


class Order
{
    @ManyToOne
    @JoinColumn(name="CUSTOMER_ID", nullable=false, insertable=true, updatable=false)
    private Customer customer;
}

У одного клиента может быть много заказов.

В моей логике я изменю свойство Customer и создам новый заказ для клиента. Затем я хочу сохранить новый созданный заказ в базе данных без обновления клиента.

Но в настоящее время, когда я сохраняю (заказ), он также обновляет клиента Как вставить заказ без обновления клиента?

Значит, это отображение один ко многим. Я изменил один объект и создал один объект «многие». Я хочу сохранить объект «многие» без обновления объекта «один».

1 Ответ

0 голосов
/ 20 января 2012

В этом случае я предпочитаю хранить «многие» объекты с «одним» идентификатором объекта, который указан, конечно, если вы уже это знаете. Попробуйте сохранить новый заказ с указанным CUSTOMER_ID. Это применяется в объекте Customer в следующий раз, когда он был загружен.

...