CGLIB (Code Generator Library) 바이트 코드를 조작해서 동적으로 클래스를 생성하는 라이브러리 인터페이스가 없어도 구체 클래스만 가지고 동적 프록시를 만들어낼 수 있음 스프링을 사용하면 외부 라이브러리 추가 없이 사용 가능 CGLIB 적용을 위해서 인터페이스와 인터페이스를 구현한 서비스 클래스를 만든다. 인터페이스 없이 구체 클래스만 있는 서비스 클래스도 만든다.
CGLIB를 사용하기 위해서는 MethodInterceptor를 구현해서 사용하면 된다. 패키지 위치가 중요하다.
Object var1 CGLIB가 적용된 객체 Method var2 호출된 메서드 Object[] var3 메서드를 호출하면서 전달된 인수 MethodProxy var4 메서드 호출에 사용 TimeMethodInterceptor는 위와 같이 구현한다. 먼저 메서드를 실행할 target를 생성자로 받을 수 있게 만든다.
프록시가 호출할 실제 대상 그다음 methodProxy의 invoke를 ...
#
aop
#
CGLIB
#
java
#
Proxy
#
동적프록시
#
자바
#
프록시
원문 링크 : CGLIB