Объект к преобразованию DTO с JPA

Я использую DataNucleus в качестве реализации JPA для хранения моих классов в моем веб-приложении. Я использую ряд преобразователей, которые все имеют toDTO() и fromDTO().

Моя проблема, что я хочу избежать целого DB, отправляемого по проводу:

  • Если я ленивая загрузка, преобразователь попытается получить доступ ко ВСЕМ полям и загрузке затем (приводящий к очень нетерпеливой загрузке).
  • Если я не сделаю ленивой загрузки, то я получу огромную часть DB, так как пользователь содержит группы, и группы содержат пользователей и так далее.

Существует ли способ явно загрузить некоторые поля и оставить другие как ПУСТОЙ УКАЗАТЕЛЬ в моем загруженном классе? Я попробовал документы DataNucleus без удачи.

6
задан WhyNotHugo 15 February 2010 в 15:26
поделиться

1 ответ

Ваши DTO, вероятно, слишком детализированы. т.е. не планируйте иметь DTO для каждого объекта JPA. Если вам нужно использовать DTO, сделайте их более крупнозернистыми и создайте их вручную.

Недавно у нас была целая дискуссия "в DTO или не в DTO, вот в чем вопрос" СНОВА. Требование к ним (особенно в контексте приложения JPA) часто больше не существует, но одним из аргументов для DTO, как правило, является то, что представление имеет более грубые требования к данным.

3
ответ дан 17 December 2019 в 18:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: