개발 공부/Spring

[Spring] 바인드 변수

sngynhy 2021. 10. 7. 13:10

바인드 변수 (스프링 컨테이너가 만드는 변수)
스프링 컨테이너가 IoC를 지원하기 때문에 즉, 컨테이너가 객체를 생성 및 관리해주기 때문에
메소드와 메소드의 결합이 용이해졌다.
횡단관심 + 핵심관심을 결합할 때 많이 사용되는데
횡단관심을 잘 사용하기 위해서는 핵심관심이 무엇인지를 알 필요가 있다.
따라서 클라이언트가 사용하는 비즈니스 메서드 즉, 핵심관심의 정보를 받아오는 JoinPoint 인터페이스를 사용한다.

ex) AroundAdvice를 수행할 때 필요한 인자인
ProceedingJoinPoint(pjp)는 스프링 컨테이너가
포인트컷을 pjp 객체로 만들어서 인자로 사용할 수 있도록 해준다.
pjp는 핵심관심의 정보를 모두 담고 있고, 따라서 사용자는 pjp를 이용하여 로깅할 수 있다.

주로 getArgs(), getSignature()(<<사용빈도가장높음)를 많이 사용




+ 동적 바인딩이란?
메소드가 수행되는 실질적인 주체가 객체가 되는 현상