SPRING - AOP란?

AOP란?

프로그래밍을 하다 보면 공통적인 기능이 

많이 발생한다. 이러한 공통 기능을 모든 모듈에

적용하기 위한 방법으로 상속을 많이쓴다

하지만 몇가지 문제가 있다. JAVA에서는 다중 상속이

불가능하여 다양한 모듈에 상속을 사용해 공통 기능을

부여하는 것에는 한계가 있다.

그리고 기능 구현부분에 핵심 기능코드와 공통

기능 코드가 섞여 있어 효율성이 떨어진다.


이러한 상속을 통한 공통 기능부여에 한계가 있어

AOP 라는것이 등장했다. AOP방법은

핵심 기능과 공통 기능을 분리 시켜놓고, 공통 기능을

필요로 하는 핵심 기능들에서 사용하는 방식이다.


먼저 AOP방법을 사용하려면 조금 생소한 용어를

알아둬야한다.


-Aspect : 공통기능

-Advice : Aspect의 기능 자체

-Jointpoint : Advice를 적용해야 되는부분

-Pointcut : Jointpoint의 부분으로 실제 Advice가

적용된 부분

-Weaving : Advice를 핵심 기능에 적용 하는 행위


스프링에서는 AOP 구현을할때 proxy를 이용한다.

호출부 -> Proxy(대행) ->Target(핵심기능)


스프링에서 AOP구현 방식에는

-XML 스키마 기반의 AOP구현

-@Aspect어노테이션 기반의 AOP구현

등이 있다.


'SPRING' 카테고리의 다른 글

SPRING - HttpServletRequest 클래스  (0) 2018.02.06
SPRING - 스프링MVC  (0) 2018.02.06
SPRING - 자바를 이용한 DI 설정  (0) 2018.02.06
SPRING - DI의 장점  (0) 2018.02.05
SPRING - DI 활용  (0) 2018.02.05

댓글

Designed by JB FACTORY