2017-11-25 3 views

답변

0

, 당신은 그것을 할 수 없습니다. Spring AOP는 AspectJ에 과 비슷한과 같은 제한된 AOP 솔루션이다. 스프링 AOP는 여러 가지 방법으로 AspectJ를보다 적게 할 수있다 :

  • 스프링 AOP는 오직 AspectJ 포인트 컷의 제한된 서브 세트를 지원한다 (포인트 컷의 실행 방식)
  • 스프링 AOP는 AspectJ를 비교 다른 의미를 갖고 그 때문에 다이렉트 바이트 코드 조작 대신 동적 프록시를 사용합니다. AOP가 사용하는 프록시 기반 솔루션에서는 제어 흐름이 프록시 된 객체를 떠나지 않을 때 어드 바이스가 실행되지 않습니다. this.someOtherMethod()
  • Spring AOP는 스프링 관리 Bean에서만 작동합니다. Hibernate 엔티티는 Spring 관리 Bean이 아니기 때문에 Spring AOP가 적용되지 않는다.

하이버 네이트 엔터티 또는 기타 비 스프링 관리 빈에 대한 조언을 제공하기 위해 기본 AspectJ로 전환하는 것이 좋습니다. Spring은 AspectJ를 멋지게 지원하며 Spring AOP 대신 native AspectJ를 사용하도록 구성을 변경할 수 있어야한다.

관련 문제