Учитывая это:
@Entity
class Order
{
@Id
public int id;
@OneToOne
Person person;
@OneToOne
Address address;
//Other Fields
}
У меня есть заказ, который загружен ленивым. Я изменяю адрес для этого заказа. Обратите внимание, что я не получил доступ к человеку (поэтому он не загружен). Тогда я делаю
update(order);
Я хотел бы знать, что происходит в этом случае с записями базы данных в таблице person. Я не хочу, чтобы запись о соответствующем человеке была обновлена с нулями. И когда я тестировал, он не обновлялся с нулями.
Насколько я понимаю, для ссылки на человека назначен прокси-объект, а не ноль.
Заботится ли Hibernate о том, что если объект не был загружен (в данном случае объект person), нет
связанная запись или записи изменены (в данном случае запись таблицы персоны)?
Безопасно ли делать такое обновление?
Спасибо!