AOP
-
JDK Dynamic Proxy vs CGLib Proxyspring 2019. 5. 13. 11:57
개요 Spring AOP는 2가지 타입의 proxy를 제공한다. 바로 JDK Dynamic Proxy와 CGLib Proxy이다. Spring AOP의 ProxyFactoryBean이 proxy를 생성하는데, 경우에 따라 이 둘 중 하나를 선택해서 사용하는 방식이다. 각 Proxy가 어떻게 다르고 어떤 경우에 쓰이는지 살펴보자. JDK Dynamic Proxy JDK Dynamic Proxy는 interface 기반의 proxy이다. 이는 큰 단점인데, 왜냐하면 모든 target class가 interface를 구현하고 있어야하기 때문이다. 또한, JDK Dynamic Proxy는 Java reflecton을 사용해 method를 invoke한다. 이를 이해하기 위해 먼저 Java reflection을 ..