Spring/Spring AOP
Spring AOP - 프록시 기반 AOP
레알윙
2020. 3. 30. 22:08
반응형
스프링 AOP 특징
- 프록시 기반의 AOP 구현체
- 스프링 빈에서만 AOP 적용
- 모든 AOP 기능을 제공하는 것이 목적이 아니라, 스프링 IoC와 연동하여 엔터프라이즈 애플리케이션에서 가장 흔한 문제에 대한 애결책을 제공하는 것이 목적
프록시 패턴
- 기존 코드 변경없이 접근 제어 또는 부가 기능 추가
2020/02/17 - [Java/패턴] - 프록시 패턴
프록시 패턴의 문제점
- 매번 프록시 클래스를 작성
- 여러 클래스 여러 메소드에 적용하면 코드의 중복
스프링 AOP사용이유
- 스프링 IoC 컨테이너가 제공하는 기반 시설과 Dynamic 프록시를 사용하여 여러 복잡한 문제 해결
- 동적 프록시 - 동적으로 프록시 객체 생성 방법
- 자바가 제공하는 방법은 인터페이스 기반 프록시 생성
- CGlib 은 클래스 기반 프록시 지원
- 스프링 IoC - 기본 빈을 대체하는 동적 프록시 빈을 만들어 등록 시켜 준다.
- 클라이언트 코드 변경 없음
- AbstractAutoProxyCreator implements BeanPostProcessor
반응형