Programing/Spring Framework

Spring Framework - Bean Scope

BUST 2019. 4. 28. 16:47

Singleton

  • 스프링 컨테이너에 관리되는 빈의 기본 Scope
  • 스프링 컨테이너에서 단 하나의 객체만 존재를 한다.

Prototype

  • Singleton 가 다르게 다수의 객체가 존재를 할수 있다.
  • 스프링 컨테이너에서 Bean의 Life Cycle를 전부 관리를 하지 않는다.
    • 즉 사용 Reference가 없는 GC에 의해 객체가 정리가 된다.
    • Lifecylce에 의해 정의되는 종료 메서드가 호출이 되지 않는다. (@Predestory 등)

 

Request

  • Http Request 생명주기 안에 유효한 Bean, 즉 Web-aware Spring Application Context에서 유효하다.

Session

  • Http Session 생명주기 안에 유요한 Bean, Request와 동일하게 Web-aware Application Context에서 유효하다.