Spring AOP 프록시와 `self-invocation` 함정 — `@Transactional`이 왜 안 먹나요?스터디2026-04-26·12분 읽기Spring AOP가 프록시 기반으로 동작한다는 사실이 @Transactional, @Async, @Cacheable이 같은 클래스 내부 호출에서 무력화되는 원인입니다. JDK 동적 프록시와 CGLIB의 차이, self-invocation이 프록시를 우회하는 이유, 네 가지 해결책을 정리합니다.