스프링에서 관리하는 자바 객체, 빈의 유지 범위에 따라 분류한 것이다.
- Singleton : 자바 어플리케이션이 실행되는 동안 하나의 객체를 생성하여 재사용한다. 이전에 생성한 객체가 있을 경우 IoC 컨테이너에서 조회해와 사용한다. 별도의 설정을 하지 않는다면 싱글톤으로 유지된다.
- Prototype : 호출 시마다 새로운 객체를 생성하여 사용한다.
Spring 에서 사용하는 bean scope 는 위의 두 가지가 있다. 그 외에 Spring MVC Web Application 을 구현하기 위해 사용하는 scope 가 존재한다.
- Request : HTTP 요청별로 인스턴스화 되며 요청이 끝나면 소멸한다.
- Session : HTTP 세션별로 인스턴스화 되며 세션이 끝나면 소멸한다.
- Global Session : 전역 세션 범위 내에 관리되는 객체이다.