<
Spring AOP의 용어
>
🌠다음 포스팅🌠

스프링 속성 자동주입
☄이전 포스팅☄

Spring AOP 관점지향 프로그래밍
AOP

목차
AOP의 5가지 용어
Advice 는 무었일까?
Aspect는 정확이 무엇일까?
Advisor은?

AOP의 5가지 용어

AOP를 학습했지만 아직도 모르는 어노테이션이 수두룩하다.

이번 포스팅에서는 AOP에서 가장 많이 사용되는 용어를 정리해 보려한다.

용어 뜻
Aspect 관점, 측면
Advisor 조언자, 고문
Advice 조언, 충고
JoinPoint 결합점
Pointcut 자르는 점

Advice 는 무었일까?

충고라는 의미의 Advice는 @Aspect 를 가지는 class가 가지는 메소드이다. 다르게 말하면, pointcut에 적용할 로직(메서드)를 의미한다.

@Aspect
@Component
public class ParameterAop {
    @Pointcut("execution(특정 클래스 혹은 메소드)")
    private void cut() {
    }

    @Before("cut()")
    public void before(Jointposint jointposint) {
    }

    @After(value = "cut()", returning = "object")
    public void after(Jointposint jointposint, Object object) {
    }
}

Aspect는 정확이 무엇일까?

AOP에서 Aspect는 여러 개의 Advice와 여러 개의 Pointcut의 결합체를 의미하는 용어이다.

Aspect = Advice들 + Pointcut들

Advisor은?

조언자는 Aspect가 가지는 요소를 하나씩만 가지는 것으로 볼 수 있다.

Advisor = 한 개의 Advice + 한 개의 Pointcut

그러나 스프링이 발전해 오면서 다수의 Advice와 다수의 Pointcut을 다양하에 조합해서 사용할 수 있는 Aspect의 등장으로 하나의 Advice와 하나의 Pointcut만을 결합하는 Advisor를 사용할 필요가 없어졌기 때문이다.

Reference

Top
Foot