프록시 팩토리 빈
-
6장) 6.4 스프링의 프록시 팩토리 빈Java & Spring/토비의 스프링 3.1 2021. 7. 16. 18:22
6장 AOP 6.4 스프링의 프록시 팩토리 빈 ProxyFactoryBean 자바 JDK에서 제공하는 다이나믹 프록시 외에도 프록시를 만들도록 지원하는 다양한 기술 존재 스프링은 일관된 방법으로 프록시를 만들 수 있게 도와주는 추상 레이어 제공 프록시 오브젝트를 생성해주는 기술을 추상화한 팩토리 빈 제공 프록시를 생성하는 작업만 담당 부가기능은 MethodInterceptor 인터페이스를 구현해서 사용 InvocationHandler의 invoke() 는 타깃 오브젝트 정보를 제공하지 않아서, 자체적으로 타깃을 알고 있어야함 MethodInterceptor의 invoke()는 ProxyFactoryBean으로 부터 타깃 오브젝트 정보를 제공받음 타깃 오브젝트에 상관없이 독립적으로 만들어 질 수 있고, 다..
-
6장) 6.3 다이내믹 프록시와 팩토리 빈Java & Spring/토비의 스프링 3.1 2021. 7. 16. 18:06
6장 AOP 6.3 다이내믹 프록시와 팩토리 빈 프록시와 프록시 패턴, 데코레이터 패턴 프록시 트랜잭션은 비즈니스 로직과는 성격이 다르기 때문에 분리, 독립 UserServiceTx, UserServiceImpl 핵심 기능(비즈니스 로직)을 담은 클래스를 부가 기능을 가진 트랜잭션 클래스에서 이용 클라이언트가 핵심 기능을 가진 클래스를 직접 사용하지 않도록, 부가 기능을 담은 클래스가 핵심 기능인 것 처럼 위장 ~> 핵심 기능 클래스를 이용 실제 대상인 것 처럼 위장해서 요청을 받아주는 대리자 역할을 한다고 해서 프록시라고 부름 요청을 위임받아 실제 처리하는 오브젝트를 타깃 or 실체(real subject) 라고 부름 클라이언트 --> 프록시 --> 타깃 사용 목적 클라이언트가 타깃에 접근하는 것을 제..