여우비오냐의 IT 기술
[AOP] 보조 업무 로직 (JAVA Proxy) 본문
1. 주 업무? 보조 업무?
위와 같은 메소드가 엄청나게 많다면?
각 메소드마다 각 보조 업무를 다 따로 처리한다?
좋지 않은 방법이다. 보조 업무들을 따로 다 빼서 하나로 묶자!
이 생각에서 나온 방법이 JAVA Proxy
2. Spring의 Proxy
- Spring기능을 쓰지 않고 Java만의 기능( InvocationHandler )으로 구현 가능하나 Spring에서는 간단하게 어노테이션으로!
➤ 사용법 :
- Proxy로써 사용할 Class에
# @Aspect
# @Component
두 어노테이션을 붙인다 ( 주의) @Aspect 만으로는 빈 설정 파일이 해당 클래스를 감지하지 않는다. )
2. 실행 지점 이전 실행할 프록시 메소드에
@Before(“execution( * <클래스명.메소드명>)”)
실행 지점 이후 실행할 프록시 메소드에
@After(“execution( * <클래스명.메소드명>)”)
** 다음과 같이 와일드카드를 이용해서 모든 메소드에도 적용이 가능하다.
# @After(“execution( * *.* )”)
3. Bean 구성 클래스에
# @EnableAspectJAutoProxy
➤ 위 Advice의 종류(@)
'Spring Boot 문법' 카테고리의 다른 글
[다국어 지원 웹] LocaleResolver (0) | 2024.04.04 |
---|---|
[Spring의 시작] MVC를 구현하기 위하여 (0) | 2024.04.04 |
[다양한 어노테이션] 빈 설정 파일을 상황별로 가져오기 (0) | 2024.04.04 |
[다양한 어노테이션] POJO 의 초기화 / 폐지 순서 정하기 (0) | 2024.04.04 |
[다양한 어노테이션] MessageSource (0) | 2024.04.04 |