aop

    AOP와 빈 후처리기를 이용한 부가 기능 분리

    들어가며 다이내믹 프록시를 이용한 부가 기능 분리 포스트에서 트랜잭션이라는 부가 기능을 비즈니스 로직으로부터 분리하기 위해 다이내믹 프록시를 도입해보았고, 이러한 다이내믹 프록시를 스프링 빈으로 등록해서 사용하기 위해 팩토리 빈 방식을 사용해보았다. 하지만 이러한 프록시 팩토리 빈 방식은 부가 기능을 담당하는 InvocationHandler를 구현한 오브젝트가 프록시 팩토리 빈의 개수(부가 기능을 사용하는 빈의 개수)만큼 만들어진다는 문제점과 여러 개의 클래스에 부가 기능을 적용해야 한다면 프록시 팩토리 빈을 생성하는 설정 코드가 중복되는 것을 막을 수 없다는 문제점이 존재하였다. 이번 포스트에서는 앞서 언급한 문제점들을 조금 더 살펴본 뒤, AOP와 빈 후처리기를 이용하여 해당 문제점들을 해결해보도록 ..