6편에서는 Spring AOP가 프록시 기반으로 동작하며, 그 구조가 왜 선택되었는지를 살펴봤습니다.이번 글에서는 그 프록시가 구체적으로 어떤 방식으로 만들어지는지, 즉 JDK Dynamic Proxy와 CGLIB의 차이를 중심으로 정리해보겠습니다.이 차이를 이해하면왜 인터페이스가 중요해지는지final 클래스/메서드가 왜 문제가 되는지프록시 관련 설정이 왜 존재하는지를 자연스럽게 설명할 수 있습니다.1. Spring 프록시는 두 가지 방식이 있다Spring AOP는 프록시를 생성할 때 두 가지 방식 중 하나를 선택합니다.JDK Dynamic ProxyCGLIB(Code Generation Library)둘 다 “프록시”이지만, 동작 방식과 제약 조건이 크게 다릅니다.2. JDK Dynamic Proxy란..