'spring aop'에 해당되는 글 2건

반응형

  두 가지 방법 중 먼저 스프링 프레임워크에서 제공하는 API를 이용한 AOP기능을 살펴보겠습니다. AOP기능을 구현하는 과정은 다음과 같습니다.

  • 타깃(Target) 클래스를 지정합니다.
  • 어드바이스(Advice) 클래스를 지정합니다.
  • 설정 파일에서 포인트컷(Pointcut)을 설정합니다.
  • 설정 파일에서 어드바이스와 포인트 컷을 결합하는 어드바이저를 설정합니다.
  • 설정 파일에서 스프링의 ProxyFactoryBean 클래스를 이용해 타깃에 어드바이스를 설정합니다.
  • getBean() 메서드로 빈 객체에 접근해 사용합니다.

  그리고 스프링 프레임워크에서 제공하는 메서드를 호출했을 때 AOP 기능을 수행하는 어드바이스 인터페이스들의 추상 메서드 기능을 정리했으니 참고하기 바랍니다.

인터페이스 추상 메서드 설명
MethodBeforeAdvice void before(Method method, Object[] args, Object target) throws Throwable 해당 메서드가 실행되기 전 실행

1. Method method: 대상 객체에서 실행된 메서드를 나타내는 메서드 객체

2. Object[] args: 메서드 인자 목록

3. Object target: 대상객체

AfterReturningAdvice

void afterReturning( Object returnValue, 

Method method,

Object[] args,

Object target)

throws Throwable

해당 메서드가 실행된 후 실행

1. Object returnValue : 대상 객체의 메서드가 반환하는 값

2. Method method: 대상 객체에서 실행된 메서드를 나타내는 메서드 객체

3. Object[] args: 메서드 인자 목록

4. Object target: 대상객체

ThrowsAdvice

void afterThrowing( Method method,

Object[] args,

Object target,

Exception ex)

해당 메서드에서 예외 발생시 실행

1. Method method: 대상객체에서 메서드를 나타내는 메서드 객체

2. Object[] args: 메서드 인자 목록

3. Object target: 대상 객체

4. Exception ex: 발생한 예외 타입

MethodInterceptor

Object invoke( MethodInvocation

invocation)

throws Throwable

해당 메서드의 실행 전/후와 예외 발생 시 실행
MethodInvocation invocation: 대상 객체의 모든 정보를 담고 있는 객체(호출된 메서드, 인자 등)

  이 중 인터페이스 MethodInterceptor는 invoke() 메서드를 이용해 다른 세 가지 인터페이스들의 기능을 동시에 수행할 수 있습니다. 

  다음 글에서는 직접 실습해 보겠습니다.

반응형

'2020 > SPRING' 카테고리의 다른 글

스프링 프레임워크 MVC 특징  (0) 2020.01.08
스프링 API를 이용한 AOP 기능 실습  (0) 2020.01.08
Spring AOP기능  (0) 2020.01.07
회원 기능 이용해 DI 실습  (0) 2020.01.07
Spring 생성자를 이용한 DI 기능  (0) 2020.01.07
블로그 이미지

꽃꽂이하는개발자

,

Spring AOP기능

2020/SPRING 2020. 1. 7. 17:39
반응형

  AOP와 관련된 여러가지 용어에 대한 설명입니다. 입문자에게는 용어의 개념을 이해하기가 다소 어려울 수 있지만 실습을 하고 나면 확실히 이해할 수 있을 것입니다. 다라서 지금은 용어 자체가 잘 이해되지 않더라도 그냥 읽고 넘어가기를 바랍니다.

용어 설명
aspect 구현하고자 하는 보조 기능을 의미합니다.
advice aspect의 실제 구현체(클래스)를 의미합니다. 메서드 호출을 기준으로 여러 지점에서 실행됩니다.
joinpoint advice를 적용하는 지점을 의미합니다. 스프링은 method 결합점만 제공합니다.
pointcut advice가 적용되는 대상을 지정합니다. 패키지이름/클래스이름/메서드이름을 정규식으로 지정하여 사용합니다.
target advice가 적용되는 클래스를 의미합니다.
weaving advice를 주기능에 적용하는 것을 의미합니다.

  스프링 프레임워크에서 AOP기능을 구현하는 방법으로는 스프링 프레임워크에서 제공하는 AOP관련 API를 이용하는 방법과 애너테이션을 이용하는 방법이 있습니다.

 

다음글에서는 스프링 API를 이용한 AOP 기능 구현 과정과 실습을 해보겠습니다.

반응형
블로그 이미지

꽃꽂이하는개발자

,