문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
springframework:aop [2013/10/07 17:50] kwon37xi 새로 만듦 |
springframework:aop [2021/03/03 17:12] (현재) kwon37xi |
||
---|---|---|---|
줄 1: | 줄 1: | ||
====== Spring AOP ====== | ====== Spring AOP ====== | ||
+ | |||
+ | ===== " | ||
+ | * 인터페이스 메소드에 건 Annotation은 상속되지 않는다. | ||
+ | * 따라서 " | ||
+ | * 부모 클래스 메소드나 혹은 인터페이스 구현 클래스에 걸어줘야 한다. | ||
===== DefaultAdvisorAutoProxyCreator ===== | ===== DefaultAdvisorAutoProxyCreator ===== | ||
- | * ''< | + | |
+ | | ||
+ | * ''< | ||
+ | |||
+ | ===== AOP가 갑자기 작동을 안 해요 ===== | ||
+ | * 이 경우 보통은 부모 ApplicationContext와 자식 ApplicationContext가 있을 때 | ||
+ | * '' | ||
+ | * 자식 쪽에서 부모쪽 AOP 걸린 Bean을 주입 받았지만 AOP 작동 안한다면, | ||
+ | * 이는 자식쪽 ApplicationContext에서 부모쪽 Bean을 **component-scan** 등으로 재생성했기 때문이다. | ||
+ | |||
+ | ===== Spring 3 AOP 종류에 따른 Class/ | ||
+ | ==== proxyTargetClass = false ==== | ||
+ | * Java Inteface 기반 Proxy를 한다. | ||
+ | * 프록시 대상 객체가 Interface를 구현하지 않거나 의도치 않게 부모 클래스가 구현한 인터페이스를 상속할 경우 프록시 대상 Concrete class로는 해당 타입을 못찾는 현상이 발생할 수 있다. | ||
+ | |||
+ | ==== proxyTargetClass = true ==== | ||
+ | * AOP Mode가 '' | ||
+ | * Class 기반 Proxy인데, | ||
+ | * Default Constructor가 존재해야한다. | ||
+ | |||
+ | ===== 참조 ===== | ||
+ | * [[https:// | ||