SPRING AOP개념
-
스프링 AOP : 개념SPRING/스프링프레임워크 핵심개념 2021. 5. 29. 01:14
AOP : Aspect-oriented Programming (AOP)은 OOP를 보완하는 수단으로, 흩어진 Aspect를 모듈활 할 수 있는 프로그래밍 기법 흩어진 관심사 (Crosscutting Concerns) 위 그림에서 같은 색깔의 영역들은 여러 클래스에서 공통적으로 사용하는 로직들이다. AOP는 주로 Logging이나 Transaction에 사용이 되는데 Logging할 때 AOP가 필요한 이유는 다음과 같다. 메서드가 실행되는 시간을 재는 로그를 쌓고자 할때, class A,B,C 각각에 시간을 재는 코드를 추가해야 한다. 이러한 경우에는 각각의 클래스에 있는 시간을 재는 로직을 수정해야 하기 때문에 유지보수가 어렵다. 그렇기 때문에 AOP를 이용하여 해결한다. Aspect X, Y, Z 각..