스프링 : request scope

Jaemin_Eun·2024년 12월 1일

request scope bean은 당연하게도
HTTP:request가 있기 전에는 인스턴스가 존재하지 않음

그래서 스프링 어플리케이션을 실행하면 객체를 찾을 수 없어 당연히 오류발생

따라서 프록시 패턴, 가짜 객체를 생성해놓는 방법으로 해결가능
어노테이션은 다음과 같음
@Component
@Scope(value = "request",proxyMode = ScopedProxyMode.TARGET_CLASS)

대상이 클래스라면 TARGET_CLASS
대상이 인터페이스라면 INTERFACES


가짜 프록시 객체는 진짜 request요청이 들어오면 그때 진짜 빈을 요청하는 로직을 실행함.
그래서 해당 빈의 logic을 실행하는건 사실 가짜 프록시 객체의 메서드를 실행하는 것임. 하지만 내부동작으로 실제 빈의 메서드를 실행하는 것과 마찬가지로 동작함.

0개의 댓글