Skip to content

Spring ‐ @Aspect AOP

woojin.jang edited this page May 13, 2026 · 2 revisions

@Aspect 어노테이션 기반 프록시 적용

  • 스프링 애플리케이션에 프록시를 적용하려면 포인트컷과 어드바이스로 구성된 어드바이저를 만들어서 스프링 빈으로 등록하면 된다.
  • 스프링에서는 @Aspect 어노테이션으로 매우 편리하게 포인트컷과 어드바이스로 구성된 어드바이저 생성 기능을 지원한다.
  • @Aspect 어노테이션은 관점 지향 프로그래밍을 가능하게 하는 AspectJ 프로젝트에서 제공하는 어노테이션으로 스프링은 이것을 사용해서 프록시를 통한 AOP를 가능하게 한다.

@Aspect 프록시

  • 자동 프록시 생성기는 @Aspect를 찾아서 이것을 Advisor로 만들어준다.
    • @Aspect를 보고 어드바이저로 변환해서 저장한다.
    • 어드바이저를 기반으로 프록시를 생성한다.

@Aspect를 어드바이저로 변환해서 저장하는 과정

  1. 스프링 애플리케이션 실행 시점에 자동 프록시 생성기를 호출한다.
  2. 모든 @Aspect 빈을 조회한다.
  3. @Aspect 어드바이저 빌더를 통해 @Aspect 정보를 기반으로 어드바이저를 생성한다.
  4. @Aspect 기반 어드바이저를 저장한다.

📖 Java

📖 Kotlin

📖 Coroutine

📖 Spring

📖 Spring Security

📖 Spring Batch

📖 Reactive Programming

📖 Database

📖 MySQL

📖 Redis

📖 JPA

📖 QueryDsl

📖 MSA

📖 Kafka

📖 Apache Flink

  • [Apache Flink - Apache Flink Architecture]
  • [Apache Flink - Stream Processing]
  • [Apache Flink - Data Stream API & Window]
  • [Apache Flink - State Management]

📖 HTTP

📖 AWS

📖 Docker

📖 Kubernetes

📖 CI/CD

📖 Nginx

📖 Monitoring🥈

  • [Monitoring - Log Concept]
  • [Monitoring - Log Level & Filter]
  • [Monitoring - Logback]
  • [Monitoring - Log Collection with ELK Stack]
  • [Monitoring - Log Monitoring with Kibana]
  • [Monitoring - Building a Monitoring System with Spring Boot Actuator]
  • [Monitoring - Server Monitoring with Prometheus and Grafana with Discord Alerts]

📖 Test

📖 Effective Java 3/E

📖 Kotlin Academy - Effective Kotlin

📖 Kotlin Academy - 핵심편

📖 스프링으로 시작하는 리액티브 프로그래밍

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 1

📖 가상 면접 사례로 배우는 대규모 시스템 설계 기초 2

📖 Clean Code

📖 리팩토링 2판

📖 주니어 백엔드 개발자가 반드시 알아야 할 실무 지식

📖 GraphQL

Clone this wiki locally