Лучший способ обновить ссылку на сущность в спящем режиме - PullRequest
1 голос
/ 26 мая 2011

Представьте, что у меня есть спящий объект, на который ссылаются многие другие объекты. Теперь я создаю новую сущность и хочу, чтобы новая сущность заняла место прежней, чтобы другие ссылались на нее вместо старой.

Каков наилучший способ сделать это?

Ответы [ 2 ]

0 голосов
/ 27 мая 2011

Самый простой способ - использовать оператор обновления для ссылающихся объектов, например:

update ReferringEntity re set re.entity.id = :newId where re.entity.id = :oldId
0 голосов
/ 26 мая 2011

Я думаю, вам следует глубоко скопировать (каким бы способом вы ни делали это) оригинальную сущность, установить свойство состояния в удаленное и сделать hibernate для обновления сущности.Затем сделайте любую модификацию скопированной сущности и сделайте hibernate, чтобы сохранить эту сущность.В результате исходная сущность будет удалена, а скопированные будут добавлены как новые с исходными ссылками.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...