Каковы преимущества прокси по классу по сравнению с прокси по интерфейсу (Spring)? - PullRequest
3 голосов
/ 16 июля 2009

Меня всегда раздражали некоторые приложения, которые я сейчас должен поддерживать, которые настаивают на использовании прокси по классу вместо прокси по интерфейсу. Точнее говоря, у меня есть классы уровня обслуживания, которые проксируются, но я не могу сделать их окончательными (даже если они должны быть), потому что по какой-то причине кто-то решил, что они должны быть прокси реальным классом, а не через интерфейс (хотя все в любом случае эти классы имеют интерфейсы).

Помимо того, что нет необходимости создавать интерфейс, есть ли реальная причина для прокси через целевой класс, а не через прокси на основе целевого интерфейса в конфигурации Spring AOP?

1 Ответ

4 голосов
/ 16 июля 2009

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

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