Не уверен, как изолировать прокси от подключения к базе данных - PullRequest
1 голос
/ 05 февраля 2012

У меня есть следующее:

  • Объект Abstract Person
  • Объект Person, который наследуется от абстрактного
  • Объект прокси Person, который наследуется от абстрактногои имеет одно дополнительное поле, так как это по сути друг
  • Репозиторий Person и DAO, которые выбирают все, что мне нужно

Вот проблема.Когда я получаю данные одного человека, я могу получить список идентификаторов, который является списком его друзей.Если я построю эти Объекты сразу после того, как заберу человека, это будет слишком дорого.Поэтому я создал прокси-сервер, чтобы заполнить его.Однако мне все еще нужно соединение с базой данных для извлечения данных, когда мне нужно их использовать.Как именно я заполняю внутренний объект Person прокси, не извлекая его изнутри, как DAO?Или я не прав и должен это делать?

1 Ответ

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

Хорошо, я понял это. Прокси-объекты МОГУТ иметь соединение с базой данных. Единственное предостережение - если объект будет сериализован в тот момент, когда могут случиться плохие вещи, хотя я не буду этого делать. То, что я сделал, - это мой прокси-сервер в моем DAO при инициализации, фабрика для простоты создания объекта и внутренний экземпляр моего объекта. После этого API-интерфейс должен быть аналогичен API-адресу объекта, который вы используете, и все его вызовы будут просто перенаправлены на внутренний экземпляр.

...