본문 바로가기
IT/spring

스프링 After Throwing 어드바이스

by 뉴코딩맨 2023. 6. 20.
스프링 프레임워크에서 After Throwing 어드바이스는 AOP(Aspect-Oriented Programming)의 일부로 핵심 비즈니스 로직에서 예외가 발생한 후에 실행되는 어드바이스입니다. After Throwing 어드바이스의 개념, 동작 방식, 활용 방법 및 예시에 대해 알아보겠습니다.
 
 

After Throwing 어드바이스란?

After Throwing 어드바이스는 핵심 비즈니스 로직에서 예외가 발생한 경우에 실행되는 어드바이스입니다. 핵심 비즈니스 로직에서 발생한 예외를 처리하거나 로그를 남기는 등의 후처리 작업에 사용됩니다.
 

동작 방식

After Throwing 어드바이스는 다음과 같은 특징을 가지고 있습니다.
  • 핵심 비즈니스 메서드에서 예외가 발생한 후에 실행됩니다.
  • 예외 객체와 메서드 정보를 어드바이스에서 참조할 수 있습니다.
  • 핵심 비즈니스 메서드가 정상적으로 실행된 경우에는 실행되지 않습니다.

 

활용 방법

After Throwing 어드바이스는 다음과 같은 상황에서 유용하게 활용될 수 있습니다.
  • 예외가 발생한 경우에 대한 추가적인 로깅 또는 예외 처리를 수행할 때
  • 예외가 발생한 경우에 특정 동작을 수행하고자 할 때

 

 

예시

다음은 After Throwing 어드바이스의 예시입니다:
 
@Aspect
@Component
public class ExceptionLoggingAspect {

    @AfterThrowing(pointcut = "execution(* com.example.service.*.*(..))", throwing = "ex")
    public void afterThrowingAdvice(JoinPoint joinPoint, Exception ex) {
        String methodName = joinPoint.getSignature().getName();
        System.out.println("메서드 실행 중 예외 발생: " + methodName);
        System.out.println("예외 정보: " + ex.getMessage());
    }
}
 
위의 예시에서는 @AfterThrowing 어노테이션을 사용하여 핵심 비즈니스 로직에서 예외가 발생한 후에 실행되는 어드바이스를 정의했습니다. 이 어드바이스는 예외가 발생한 메서드 이름과 예외 정보를 출력하는 역할을 합니다. 이렇게 정의한 어드바이스를 스프링 AOP 설정에 등록하면 해당 메서드들이 예외가 발생할 때 After Throwing 어드바이스도 함께 실행됩니다.

 

 

결론

After Throwing 어드바이스는 스프링 AOP에서 핵심 비즈니스 메서드에서 예외가 발생한 후에 실행되는 어드바이스입니다. 예외 처리나 로깅과 같은 후처리 작업을 수행할 때 유용하게 활용할 수 있습니다. 예외가 발생한 메서드 이름과 예외 정보를 활용하여 필요한 작업을 수행할 수 있습니다.
 
 

스프링 After Returning 어드바이스

스프링 프레임워크에서 After Returning 어드바이스는 AOP(Aspect-Oriented Programming)의 일부로 핵심 비즈니스 로직이 정상적으로 실행된 후에 실행되는 어드바이스입니다. After Returning 어드바이스의 개념

newcodingman.tistory.com

 

댓글