@Aspect 이란?

YOBY·2023년 9월 14일
0

@Aspect는 자바에서 스프링 프레임워크에서 제공하는 기능 중 하나로, AOP를 구현하는데 사용됩니다.

AOP는 프로그래밍에서의 관심사를 분리하는 기술입니다.
관심사란 프로그램을 작성할 때 주요한 기능 외에도 로깅, 보안, 트랜잭션 관리 등과 같은 부가적인 작업을 의미합니다.

@Aspect는 이러한 부가적인 작업을 따로 모듈화하여 관리하는 역할을 합니다.
이를 통해 코드의 가독성을 높이고 유지보수를 용이하게 만들어줍니다.

@Aspect
@Component
public class LoggingAspect {

    // 어드바이스 정의: 메서드 실행 전에 실행
    @Before("execution(* com.example.app.service.*.*(..))")
    public void beforeServiceMethods() {
        System.out.println("메서드 실행 전 로깅: 메서드가 호출되기 전에 로깅 작업을 수행합니다.");
    }
}

이를 통해 주요한 비즈니스 로직과 부가적인 작업들이 서로 간섭하지 않고 분리됨으로써 코드의 가독성과 유지보수성이 향상됩니다.

0개의 댓글