JPA / Hibernate Выберите подмножество столбцов при соединении - PullRequest
3 голосов
/ 01 ноября 2008

В SQL легко выполнить объединение и вернуть только те столбцы, которые вам нужны, из объединенной таблицы. Каков наилучший способ отобразить это в JPA / Hibernate?

Например, существует объект Folder, сопоставленный с EMAIL_FOLDER, и объект Email, сопоставленный с таблицей EMAIL. Между папкой и электронной почтой существует отношение один ко многим. Сущность Email довольно тяжелая, потому что она содержит КЛОБЫ текста, вложения и т. Д. В некоторых случаях нам нужно вернуть всю электронную почту обратно, а в других случаях мы просто хотим вернуть senderName, subject и sentDate не хотите, чтобы накладные расходы на ввод данных CLOB. Выполнить это в SQL просто, но я не уверен, какой лучший подход будет в JPA / Hibernate.

Я думаю о создании LightEmail, которое сопоставляется только с senderName, subject и sentDate. Это лучший способ справиться с чем-то подобным?

Обновление: на этом этапе я бы хотел, по возможности, избегать инструментирования байт-кода.

1 Ответ

1 голос
/ 01 ноября 2008

Аннотируйте свойство (CLOB) как @Basic(fetch=FetchType.LAZY)

См. Объявление основных сопоставлений свойств в Hibernate Reference

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