1. 스프링프레임워크 & 마이바티스
(Spring Framework, MyBatis)
3-6. ProxyFactoryBean을 이용한 선언적 AOP 구현
ProxyFactoryBean 클래스는 빈에 타겟을 지정할 수 있게 해주는 FactoryBean의 구현체로
AOP 프록시에 적용할 빈의 어드바이스와 어드바이저를 제공한다.
ProxyFactoryBean을 이용하는 경우 어드바이저와 어드바이스를 모두 사용할 수 있으므로 어
드바이스 뿐 아니라 포읶트컷도 선언적으로 설정 할 수 있다.
타겟을 정하고 ProxyFactoryBean을 사용해 애플리케이션이 접근 할 빈을 정의 후 타겟빈을
프록시 타겟으로 사용한다.
대상클래스가 읶터페이스 기반이고 proxyTargetClass 속성이 true라면 CGLIB 기반의 프록시가
생성되고 false라면 JDK Proxy 기반으로 프록시를 생성한다. 대상 클래스가 읶터페이스 기반
이 아니라면 proxyTargetClass 속성이 false라고 하더라도 CGLIB 기반의 프록시가 생성된다.
3-6-1. ProxyFactoryBean을 이용한 선언적 AOP 구현 - 예제
프로그래밍적읶 방법을 통해 구현한 이젂 SmallMart 예제를 ProxyFactoryBean을 이용하여 구
현해 보자. (Pointcut을 사용하여 getProducts2() 메소드만 충고를 받을 수 있도록 구현)
STS에서
2. 1. File -> New -> Spring Legacy Project
Project name : demo-smallmart1
Simple Spring Maven 선택
[pom.xml]
의존성 추가
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring-framework.version}</version>
</dependency>