Странное поведение merge () в Hibernate, как указано в ссылке на Hibernate - PullRequest
0 голосов
/ 14 февраля 2012

В ссылке на hibernate сказано, что merge ()

• если в данный момент нет постоянного экземпляра, связанного с сеанс, попробуйте загрузить его из базы данных или создать новый постоянный Экземпляр

• постоянный экземпляр возвращается

• данный экземпляр не становится связанным с сеансом, он остается отделенным

что означает последняя строка, что возвращаемый объект отсоединен? merge () используется для повторного связывания объекта detach с сеансом, так почему же он возвращает отделенный объект?

1 Ответ

0 голосов
/ 14 февраля 2012

В документации написано "данный экземпляр". Это значит:

A a, b;
...
a = session.merge( b );

На этом этапе a связан с сеансом, но b остается отсоединенным.

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