1. AOP
AOP( Aspect-Oriented Programming )는 프로그램 구조에 대한 또 다른 사고 방식을 제공하여 OOP(Object-Oriented Programming)를 보완한다. OOP에서 모듈성의 핵심 단위는 클래스인 반면 AOP에서는 모듈성의 단위가 aspect 이다. Aspect는 여러 유형과 개체를 가로지르는 트랜잭션 관리와 같은 문제의 모듈화를 가능하게 한다.
1.1. Spring AOP
Spring AOP는 순수한 Java로 구현되며, 특별한 컴파일 과정이 필요하지 않다. AOP에 대한 Spring AOP의 접근 방식은 대부분의 다른 AOP 프레임워크와 다르다. 가장 완벽한 AOP 구현을 제공하는 것이 아니라, AOP 구현과 Spring IoC 간의 긴밀한 통합을 제공하여 엔터프라이즈 애플리케이션의 일반적인 문제를 해결하는 데 도움이 된다. 따라서 Spring Framework의 AOP 기능은 일반적으로 Spring IoC 컨테이너와 함께 사용된다. Spring AOP는 기본적으로 AOP 프록시용 표준 J2SE 동적 프록시 를 사용한다.
AOP적용 예시

'Spring' 카테고리의 다른 글
스프링 빈과 주요 어노테이션 (0) | 2024.07.17 |
---|---|
Web서버 vs WAS (1) | 2024.07.16 |
[스프링 입문] JPA (0) | 2023.01.21 |
[스프링 입문] 스프링 빈과 의존관계 (0) | 2023.01.21 |
[스프링 입문] API (0) | 2023.01.18 |