HQL: запрос только базовой таблицы из сущности <join> - PullRequest
0 голосов
/ 13 мая 2011

У меня есть это отображение

<class name="Person" table="person">
<id name="Id" column="id" type="Int32" unsaved-value="0">
  <generator class="native" />
</id>

<property name="Code" column="code" type="String" not-null="true" />
<property name="FirstName" column="firstName" type="String" not-null="true" />
<property name="MiddleName" column="middleName" type="String" not-null="false" />
<property name="LastName" column="lastName" type="String" not-null="false" />

<join table="personPhoto" optional="true">
  <key column="personId" />
  <property name="Photo" column="pictureContent" not-null="false" />
</join>

и сгенерированный SQL всегда использует левое внешнее соединение, что является правильным. Однако можно ли сказать HQL запрашивать только из таблицы person, поскольку мне не всегда нужно свойство 'Photo'? И как?

1 Ответ

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

Есть ли отношение один-к-одному между персоной и персонойФотографии?

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

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