비지니스 로직과 부가기능을 처리하는 코드가 뒤섞이지 않게 AOP를 도입하여 부가기능을 도입하여 모듈화를 한다. AOP란? (Aspect Oriented Programming) 어플리케이션에서 관심사의 분리(기능의 분리)를 말한다. 즉, 핵심적인 기능에서 부가기능들을 분리한다. 분리한 부가기능을 Aspect라는 독특한 모듈형태로 만들어서 설계하고 개발하는 방법이다. Aspect?? Advice + Pointcut => Aspect 에스팩트는 싱글톤 형태의 객체로 존재한다. Advisor Advice + PointCut Weaving 위빙은 포인트컷에 의해서 결정된 타겟의 조인 포인트에 부가기능(어드바이스)를 삽입하는 과정AOP가 핵심기능(타겟)의 코드에 영향을 주지 않으면서 필요한 부가기능(어드바이스)을 ..