본문 바로가기
공부이야기/Spring

[Spring] Bean Scope의 종류

by coderoom 2021. 5. 13.

 

Singleton (싱글톤)

기본 scope. 스프링 컨테이너의 시작과 종료까지 하나의 객체로 유지되는 가장 넓은 범위의 스코프이다.

특정 타입의 Bean을 하나만 만들어 두고 공유해서 사용하기 위함.

 - Bean에 상태를 저장하는 코드를 작성하는 것은 동시성 문제를 유발함,

 

 

Prototype (프로토타입)

스프링 컨테이너는 프로토타입 빈의 생성과 의존 관계 주입까지만 관연하고 더는 관리하지 않는 매우 짧은 범위의 스코프이다.

요청이 오면 항상 새로운 인스턴스를 생성하여 반환하고 이후에 관리하지 않는다. (빈 콜백 중 종료 메소드가 호출 안 된다.)

 

 

Web (웹)

  • request: 웹 요청이 들어오고 나갈 때 까지 유지되는 스코프
  • session: 웹 세션이 생성되고 종료될 때 까지 유지되는 스코프
  • application: 웹의 서블릿 컨텍스와 같은 범위로 유지되는 스코프

 

 

 

 

참고 링크

 

 

 

 

- mushroong

 

 

 

 


 

 

 

댓글