singleton | 하나의 Bean 정의에 대해서 Spring IOC Container 내에 단 하나의 객체만 존재한다. |
prototype | 하나의 Bean 정의에 대해서 다수의 객체가 존재할 수 있다. |
request | 하나의 Bean 정의에 대해서 하나의 HTTP request의 생명주기 안에 단 하나의 객체만 존재한다. 즉 각각의 HTTP request는 자신만의 객체를 가진다. Web-aware Spring ApplicationContext 안에서만 유효하다. |
session | 하나의 Bean 정의에 대해서 하나의 HTTP Session의 생명주기 안에 단 하나의 객체만 존재한다. Web-aware Spring ApplicationContext 안에서만 유효하다. |
global session | 하나의 Bean 정의에 대해서 하나의 global HTTP Session의 생명주기 안에 단 하나의 객체만 존재한다. 일반적으로 portlet context안에서 유효하다. Web-aware Spring ApplicationContext 안에서만 유효하다. |
singleton이 default이다.
singleton은 객체 생성시 어디서 부르든 같은 객체를 참조할 수 있도록 해주는것
prototype은 객체 생성시 어디서 부르든 다른 객체를 참조할 수 있도록 해주는것
request는 각각의 요청마다 다른 객체를 생성 하여 요청이 들어오고 나갈때 까지만 유지됨
session 브라우저가 서버에 최초의 요청을 보낼때 Bean객체가 주입된다.
그 이후엔 주입이 되지 않음 한번 주입된 객체를 계속 사용한다.
Bean을 주입만 해줄뿐 session에 저장되지는 않는다.
global session 포틀릿 기반의 웹 어플리케이션 용도로 전역 세션스코프가 빈과 같은 스프링 MVC를 사용한 포탈 애플리케이션 내의 모든 포틀릿 사이에 공유를 할 수 있습니다.
portlet이란?
포틀렛은 웹 기반 콘텐츠, 응용프로그램 및 기타 리소스에 대한 액세스를 제공하는 재사용 가능한 웹 모듈이다
'스프링' 카테고리의 다른 글
Spring AOP Advice 5가지 (0) | 2022.10.27 |
---|---|
Spring AOP (0) | 2022.10.26 |
spring xml, @어노테이션 같이 사용한 DI (0) | 2022.10.25 |
spring java로 DI (0) | 2022.10.25 |
xml을 활용한 객체 주입 (0) | 2022.10.25 |