<aside>
Spring Boot의
<aside> <img src="/icons/code_gray.svg" alt="/icons/code_gray.svg" width="40px" /> 스프링은 프록시 패턴을 통해, 요청을 변환하거나 추가적인 작업을 수행할 수 있다. AOP는 여러 클래스에 공통적으로 적용해야하는 로직을 분리된 코드로 관리할 수 있게 해주는데 이를 스프링의 빈을 프록시 패턴으로 다루는 특성을 통해 쉽게 구현할 수 있다.
</aside>
프록시는 뭐인가요? (스프링 빈 = 프록시 객체)
프록시를 통해서 AOP를 구현할 수 있다?
⇒ 프록시 패턴이 AOP를 구현하는 핵심 메커니즘 중 하나로 활용됨
[AOP 활용] : 로깅, 트랜잭션, 보안
<aside> <img src="/icons/code_gray.svg" alt="/icons/code_gray.svg" width="40px" /> 자바 리플렉션(Reflection)은 런타임 시점에 클래스, 메서드, 필드 등에 접근하고 조작할 수 있는 기능
Spring에서의 활용 예시:
@Autowired, @Value, @RequestMapping 등의 어노테이션 처리
</aside><aside> <img src="/icons/code_gray.svg" alt="/icons/code_gray.svg" width="40px" /> 프록시 패턴은 실제 객체 대신 대리 객체를 사용하여 접근을 제어하는 디자인 패턴이다.
Spring에서의 활용 예시:
@Transactional)