2009-10-31 7 views
3

서비스 클래스에 '다중'AOP 동작을 적용 할 수 있는지 여부를 알고 싶습니다.Spring - 서비스에 대한 '다중'AOP 동작이 어떻게 해결 되었습니까?

말을 바로하자, 난 내 BankServiceImpl 클래스에이 작업을 수행 :

  • @Transactional 방법 중 하나 accountTransfer()
  • 다른 방법 someOtherMethod()의 실행에 일부 사용자 지정 <aop> 포인트 컷의 상단에.

다음 accountTransfer() 트랜잭션 만들어지고 someOtherMethod()aop 동작을 주어 하나 프록시를 생성 할 수 봄 것인가?

스프링이 복수 AOP 동작을 어떻게 해결하는지에 대한 아이디어가 있습니까?

답변

3

스프링이 모든 조언 유형을 가진 단일 프록시 객체를 생성하는 것처럼 보입니다. 이 프록시 객체는 JDK 동적 프록시 또는 CGLIB 프록시에 관계없이 org.springframework.aop.framework.Advised을 구현합니다.

어드바이저가 여러 명인 경우 Ordered 인터페이스 또는 @Ordered 주석을 구현하여 설명하지 않는 한 실행 순서가 정의되지 않습니다. here 주문에 대한 자세한 내용을 확인할 수 있습니다. 스프링 트랜잭션 측면은 기본적으로 우선 순위가 가장 낮습니다.

+0

감사합니다. Jason..this는 많은 도움이되었습니다. – peakit