2024. 3. 10. 17:38ㆍBackend/Spring

📝 [코드로 배우는 스프링 웹 프로젝트(개정판)]을 공부하며 배운 것들을 기록한 내용입니다. 자세한 내용은 해당 도서를 참고해주세요~!
AOP(Aspect Oriented Programming) : 관점 지향 프로그래밍
핵심 로직이 아니지만 공통의 관심사를 따로 분리하고, 관심사를 구현한 코드를 컴파일 또는 실행 시점에 결합하는 것을 말합니다. 부가 기능들을 한 곳에서 관리할 수 있게 합니다. AOP를 사용하는 목적은 개발자가 핵심 비즈니스 로직에 집중할 수 있도록 하기 위함입니다!
About AOP
1. Proxy, Target, JoinPoint
- Proxy는 Target을 감싸고 있는 것을 말하며, Target은 핵심 비즈니스 로직을 이야기합니다.
- JoinPoint는 Target이 가지고 있는 메서드입니다.
외부에서의 호출은 Proxy 객체를 통해서 Target 객체의 JoinPoint를 호출하는 방식
2. Aspect, Advice
- Aspect는 관심사를 의미하며, Advice는 Aspect가 구현된 코드를 의미합니다.
- @Aspect
- @Before, @After, @AfterReturning, @AfterThrowing, @Aroud
3. Pointcut
- Pointcout은 Advice를 어떤 JoinPoint에 결합할 것인지 결정하는 설정입니다.
References
1. 코드로 배우는 스프링 웹 프로젝트(개정판) - 구멍가게 코딩단, 남가람북스
2. 스프링 AOP
3. 김영한 스프링 입문
'Backend > Spring' 카테고리의 다른 글
| [Spring] MVC : DispatcherServlet, 동작 순서 (0) | 2024.05.13 |
|---|---|
| [Spring] Http Servlet - Request / Response (0) | 2024.03.10 |
| [Spring] Spring Controller - InitBinder, Model, ModelAttribute (0) | 2024.03.10 |
| [Spring] 컴포넌트 스캔, 의존 관계 주입, 조회되는 빈 (0) | 2024.01.25 |
| [Spring] Singleton Container (1) | 2024.01.24 |