목차
- BeanPostProcessor - 하나의 프록시에 여러개의 Advisor 적용
- BeanPostProcessor
- Spring 핵심원리 고급편 - ProxyFactory 적용
- Spring 핵심원리 고급편 - 여러 Advisor 와 함께 적용
- Spring 핵심원리 고급편 - Spring 에서 제공하는 Pointcut
- Spring 핵심원리 고급편 - Pointcut 만들기
- Spring 핵심원리 고급편 - Advisor
- Spring 핵심원리 고급편 - MethodInterceptor
- Spring 핵심원리 고급편 - ProxyFactory
참고
본 포스트는 김영한의 스프링 핵심 원리 - 고급편 내용을 참고해 만들었습니다.
save 메서드는 어드바이스 로직을 적용하지만, find 메서드에서는 어드바이스 로직을 적용하지 않도록 설정하기
Spring 에서 제공하는 Pointcut
가장 많이 사용하는 Pointcut 구현체는 AspectJExpressionPointcut 다.
클래스 | 설명 |
---|---|
NameMatchMethodPointcut | 메서드 이름을 기반으로 매칭한다. 내부적으로 PatternMatchUtils 을 사용한다. |
JdkRegexpMethodPointcut | JDK 정규 표현식을 기반으로 포인트 컷을 한다. |
AnnotationMatchingPointcut | 애노테이션으로 매칭한다. |
AspectJExpressionPointcut | aspectJ 표현식으로 매칭한다. |
ServiceInterface target = new ServiceImpl(); |
00:14:12.347 [Test worker] INFO hello.proxy.common.advice.TimeAdvice - TimeProxy 실행 |