스프링 레시피 CH2.5 @Scope를 붙여 POJO 스코프 지정하기
과제 @Component 같은 애너테이션을 POJO 인스턴스에 붙이는 건 빈 생성에 관한 템플릿을 정의하는 것이지, 실제 빈 인스턴스를 정의하는 게 아니다. getBean() 메서드로 빈을 요청하거나 다른 빈에서 참조할 때 스프링은 빈 스코프에 따라 어느 빈 인스턴스를 반환할지 결정해야 한다. 이때 기본 스코프 이외의 다른 빈 스코프를 지정할 경우가 있다. 해결책 @Scope는 빈 스코프를 지정하는 애너테이션이다. 스프링은 IoC 컨테이너에 선언한 빈마다 정확히 인스턴스 하나를 생성하고 이렇게 만들어진 인스턴스는 전체 컨테이너 스코프에 공유된다. getBean() 메서드를 호출하거나 빈을 참조하면 이러한 유일무이한 인스턴스가 반환된다. 이 스코프가 바로 모든 빈의 기본 스코프인 singleton이다. 전..
2023.12.11