advisor.setExpression("execution(* one(..))");
- and args 조건식을 걸 수도 있음
- 모든 one메소드에서 사용
- execution
-
-
- 리턴타입에 대한 정의(은 모든 리턴 타입, int void 다 올 수 있음 ..:범위 조건(파라미터 갯수 제한 없음)
- one*
- one으로 시작하는 모든 메소드 (패키지 명 부터 올 수 있음)
AspectJExpressionPointcutAdvisor advisor = new AspectJExpressionPointcutAdvisor();
advisor.setAdvice(new SimpleAdv());
advisor.setExpression("execution(* one(..))");
//and args조건식을 걸 수도 있음
//모든 one메소드에서 사용,
//execution:
//* : 리턴타입에 대한 정의(*은 모든 리턴 타입, int void 다 올 수 있음
//..:범위 조건(파라미터 갯수 제한 없음)
//* one* : one으로 시작하는 모든 메소드 (패키지 명 부터 올 수 있음)
Pointcut pc = advisor.getPointcut();
Advice adv = advisor.getAdvice();
ProxyFactory pf = new ProxyFactory();
pf.addAdvisor(advisor);
pf.setTarget(first);
First first2 = (First)pf.getProxy();
pf = new ProxyFactory();
pf.addAdvisor(advisor);
pf.setTarget(second);
Second second2 =(Second)pf.getProxy();
first2.one();
first2.two();
second2.one();
second2.two();