Notice
Recent Posts
Recent Comments
Link
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Tags
more
Archives
Today
Total
관리 메뉴

charminseok

[Spring] AOP 본문

Spring

[Spring] AOP

charminseok 2021. 1. 26. 14:09

AOP란? 흩어진 Aspect(공통 기능)를 모듈화하는 프로그래밍 기법으로 OOP를 보완해준다.

 

 

AOP Aspect Oriented Programming의 약자로 관점 지향 프로그래밍이라고 불린다. 관점 지향은 쉽게 말해 어떤 로직을 기준으로 핵심적인 관점, 부가적인 관점으로 나누어서 보고 그 관점을 기준으로 각각 모듈화하겠다는 것이다.

출처: https://engkimbs.tistory.com/746?category=767795 [새로비]

 

AOP 용어

target: 부가 기능을 부여할 대상(class, 메서드, ..).

Aspect: 부가기능 모듈

Advice: 부가기능을 담은 구현체로 해야할 일들을 뜻한다.

Pointcout: 부가 기능이 적용될 대상을 선정하는 것. 부가기능을 어디에 적용하는지.

Join Point: advice가 적용될 수 있는 시점. 메서드를 실행할때 끼어들 수 있는 지점이 join point이다.

 

AOP 적용 방법

1. 컴파일

2. 로드 타임

3. 런타임: 스프링 AOP가 사용하는 방법으로 A라는 class(Bean)에 Aspect X를 적용해야 하는데, A라는 빈을 만들때 A라는 빈의 proxy Bean을 만든다.

proxy Bean: 타겟을 감싸서 타켓의 요청을 대신 받아주는 wrapping 오브젝트.

 

 

 

'Spring' 카테고리의 다른 글

[Spring Boot] 의존성 관리  (0) 2021.02.10
[Spring Boot]  (0) 2021.01.31
[spring] SpEL  (0) 2021.01.26
[Spring] Data Binding  (0) 2021.01.24
[Spring] Validation 추상화  (0) 2021.01.23