Допустим, у меня есть два класса:
@Entity
public class Parent {
@OneToOne
private Child child;
}
@Entity
public class Child {
@OneToOne
private Parent parent;
private String name;
}
Затем я получаю родительский класс, и через него меняем дочерний класс следующим образом:
Parent parent = parentRepo.findOne(id);
parent.getChild().setName("newName");
Это вызывает событие Hibernate(onPostUpdate) для объекта Child, поскольку имя помечено как грязное.Это все имеет смысл.
PostUpdateEvent:
@Override
public void onPostUpdate(PostUpdateEvent event) {
...
}
Но есть ли способ пометить родителя как грязного (потому что дочерний объект был изменен), поэтому событие Update инициируется для родителя?