Шаблон прокси-сервера JAVA EE - PullRequest
3 голосов
/ 03 марта 2011

Я везде читаю, что когда вы просите, чтобы зависимости были внедрены в bean-компонент, вы вводите прокси для экземпляра этого ресурса. Я полагаю, что знаю, что такое прокси, это экземпляр, который знает, как пересылать сообщения другому экземпляру. Также заявлено, что именно этот шаблон позволяет контейнеру предоставлять услуги этим управляемым bean-компонентам.

Я не очень хорошо понимаю это. Зачем нужен прокси? И как это реализовано? есть ли прокси-объект для каждого компонента? или у меня много прокси, переадресация на один экземпляр а может и нет?

Кроме того, из шаблонов оформления книги от GoF я прочитал, что вы должны предоставить прокси-класс, который действует как заполнитель. Но я никогда не делаю этого в Java EE, создает ли сервер приложений прокси-класс во время выполнения?

1 Ответ

5 голосов
/ 03 марта 2011

Существенное предположение, лежащее в основе шаблона прокси-сервера, заключается в том, что вам не нужно заботиться об этом с «пользовательской» точки зрения.Прокси маскируется как объявленный тип и должен вести себя так же.Добавленная стоимость зависит от того, что прокси-сервер делает до или после того, как он перенаправляет или возвращает вызовы целевому экземпляру.Так, например, транзакции и безопасность реализованы в контейнере.

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

...