Получить идентификатор для ленивого объекта «многие к одному» без доступа к БД - PullRequest
5 голосов
/ 29 октября 2010

Интересно, возможно ли это с любой версией Nhibernate?

У меня есть класс A со свойством класса B, связанным ленивым отношением "многие к одному". Я хотел бы получить A.B.Id, не заходя в базу данных (я имею в виду, не получая всю сущность B). Это возможно?

Спасибо!

1 Ответ

6 голосов
/ 29 октября 2010

Просто сделай это! Hibernate достаточно умен, чтобы не загружать объекты глубоко, если вам не нужны их другие свойства, поэтому вызов A.getB().getId() не должен приводить к глубокой загрузке B (он будет использовать идентификатор B, хранящийся в A).

Вот сайт, который объясняет концепцию более подробно: Получение идентификатора из Lazy Loaded Object с использованием аннотаций в Hibernate

Попробуйте и убедитесь сами.

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