У меня есть два класса: Parent
и Child
, сопоставленные один-ко-многим с отношениями, принадлежащими Child
.Я также использую кэш 2-го уровня с Ehcache.
Чтобы сохранить связь, я делаю это:
child.setParent(parent);
session.saveOrUpdate(child);
parent.getChildren().add(child);
Когда я загружаю parent
в другой сессии (из кеша 2-го уровня),будет ли это добавленное child
видимым?Как правильно обновить коллекцию родителей в этой ситуации?
Бонусные баллы за ответы, в которых есть какое-то конкретное объяснение или ссылка на документацию, а не «мне кажется, что это нормально».
быть ясным: все происходит внутри транзакции, которая правильно зафиксирована.Главный вопрос: Это правильный способ обновления parent.children
для этого Session
и для других в кэше 2-го уровня?
Еще один момент: Что мне делатьвывести такую коллекцию из кэша 2-го уровня при откате?