1. Spring AOP(Aspect-Oriented Programming) 개요(관점지향 프로그램)
① Application을 두가지 관점에 따라 구현
- 핵심 관심 사항(core concern)
- 공통 관심 사항(cross-cutting concern)
② 기존 OOP 보완
- 공통 관심 사항을 여러 모듈에서 적용하는데 한계가 존재
- AOP는 핵심 관심 사항과 공통관심 사항 분리하여 구현
2. Spring AOP 용어
① Target : 핵심사항(Core)가 구현된 객체
② JoinPoint : 공통관심사항이 적용될 수 있는 지점(ex : 메소드 호출시,
객체생성시 등)
③ Pointcut : JoinPoint 중 실제 공통사항이 적용될 대상을 지정
④ Advice
- 공통관심사항(Cross-Cutting) 구현 코드 + 적용시점.
- 적용 시점 : 핵심로직 실행 전, 후, 정상종료 후, 비정상 종료 후, 전/후가 있다.
⑤ Aspect - Advice + Pointcut
⑥ Weaving : JoinPoint의 Advice에 Aspect를 주입하는 코드를 만드는 것
(컴파일 시점, 런타임 시점 Weaving이 있다.)
3. Spring에서 AOP 구현 3가지 방법
① POJO Class를 이용한 AOP 구현
② 스프링 API를 이용한 AOP 구현
③ 어노테이션(Annotation)을 이용한 AOP 구현
'프로그래밍 > Spring AOP' 카테고리의 다른 글
POJO 기반 AOP 구현 - Advice 클래스 작성(After Returning, After Throwing, After)- spring_aop_02_after[실습] (0) | 2012.06.25 |
---|---|
Spring_aop[실습] (0) | 2012.06.22 |
POJO 기반 AOP - AspectJ 표현식 (0) | 2012.06.22 |
proxy패턴(대리인 패턴) (0) | 2012.06.22 |
POJO 기반 AOP 구현 (0) | 2012.06.21 |