Loading...
Spring Framework Reference Documentation 7.0.2의 Creating AOP Proxies Programmatically with the ProxyFactory의 한국어 번역본입니다.
아래의 경우에 피드백에서 신고해주신다면 반영하겠습니다.
감사합니다 :)
ProxyFactorySpring을 사용하면 AOP 프록시를 프로그래밍 방식으로 쉽게 생성할 수 있습니다. 이를 통해 Spring IoC에 대한 의존성 없이 Spring AOP를 사용할 수 있습니다.
target 객체가 구현하는 인터페이스들은 자동으로 프록시잉됩니다. 다음 예시는 하나의 인터셉터와 하나의 어드바이저를 사용하여 target 객체에 대한 프록시를 생성하는 방법을 보여줍니다:
1ProxyFactory factory = new ProxyFactory(myBusinessInterfaceImpl); 2factory.addAdvice(myMethodInterceptor); 3factory.addAdvisor(myAdvisor); 4MyBusinessInterface tb = (MyBusinessInterface) factory.getProxy();
1val factory = ProxyFactory(myBusinessInterfaceImpl) 2factory.addAdvice(myMethodInterceptor) 3factory.addAdvisor(myAdvisor) 4val tb = factory.proxy as MyBusinessInterface
첫 번째 단계는 org.springframework.aop.framework.ProxyFactory 타입의 객체를 생성하는 것입니다. 앞의 예제처럼 target 객체로 이를 생성할 수도 있고, 다른 constructor에서 프록시잉할 인터페이스들을 지정할 수도 있습니다.
advice(인터셉터는 advice의 특수한 형태입니다), 어드바이저 또는 둘 다를 추가할 수 있으며 ProxyFactory의 생애 동안 이를 조작할 수 있습니다. IntroductionInterceptionAroundAdvisor를 추가하면 프록시가 추가적인 인터페이스들을 구현하도록 만들 수 있습니다.
또한 ProxyFactory에는(AdvisedSupport로부터 상속됨) before advice와 throws advice 같은 다른 advice 타입을 추가할 수 있는 편의 메서드들도 있습니다.
AdvisedSupport는 ProxyFactory와 ProxyFactoryBean 둘 다의 슈퍼클래스입니다.
💡 대부분의 애플리케이션에서 AOP 프록시 생성을 IoC 프레임워크와 통합하는 것이 모범 사례입니다.<br>AOP를 사용할 때는 일반적인 경우와 마찬가지로 Java 코드로부터 설정을 외부화할 것을 권장합니다.
Concise Proxy Definitions
Manipulating Advised Objects