AOP 구현 방법 비교 java에서 AOP를 구현하는데는 세가지의 방법이 있다. java proxy, cglib, aspectJ이다. 이번 포스팅에서는 세가지를 간단하게 비교해보고 개인적인 경험을 적어 두려고 한다. Java proxy (InvocationHandler) 런타임시에 Target method가 호출될 때 Advice(프록시 할 기능)을 적용 JDK Proxy는 인터페이스에 대한 Proxy만을 지원 Cglib (MethodInterceptor) java proxy와 동일하게 런타임시에 Advice 적용 메써드가 처음 호출 되었을때 동적으로 bytecode를 생성하여 이후 호출에서는 재사용 클래스에 대한 Proxy가 가능 AspectJ Runtime이 아닌 Compile 시점에 Aspect를 ..
사실 지난 번에 포스팅한 '[JAVA:reflection] typesafe하게 특정 메서드 객체 가져오기 ' 나 '[JAVA] 현재 실행중인 메서드 가져오는 방법' 은 내가 어떤 문제를 해결하기 위해서 찾다가 알게 된 것이었다.그 문제는 아래와 같다. 우리는 보통 데이터를 캐싱된 데이터를 가져오거나 입력할 때,1) 캐시 서비스 객체를 초기화하고, 2) 캐시키를 만들고, 3) 설정된 캐시팜에서 캐시키를 통해서 객체를 가져오고4) 객체가 NULL이면 실제 서비스 객체를 통해서 데이터를 가져오고5) 가져온 데이터를 캐시키에 맞게 캐시팜에 입력하고6) 가져온 데이터를 리턴하는 위와 같은 로직을 반복하고 있다. 이러한 중복되는 로직을 메서드로 추출하는 것이 문제이다. 문제를 해결하기 위해서 많은 고민을 해봤지만,..
- Total
- Today
- Yesterday
- ES6
- html
- hands-on
- 한달살기
- spring boot
- 사누르
- ecma6
- AWS
- Clean code
- 독후감
- container
- 웹
- 도커
- 회고
- 객체지향
- ChatGPT
- 컨테이너
- Bali
- 실수노트
- javascript
- Docker
- 개발자
- S68
- springboot
- 발리
- rest
- AWSKRUG
- 웹을 지탱하는 기술
- spring
- sanur
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |