1. Bean 객체의 생성 단위

① BeanFactory를 통해 Bean을 요청시 객체 생성의 범위(단위)를 설정

② <bean>의 scope 속성을 이용해 설정

- scope의 값

 

- request, session은 WebApplicationContext에서만 적용 가능

③ 빈(bean) 범위 지정

- singleton과 prototype

· <bean id="dao" class="dao.OracleDAO" scope="prototype"/>

· prototype은 Spring 어플리케이션 컨텍스트에서 getBean으로 빈(bean)을 사용

시 마다 새로운 인스턴스를 생성함.

· singleton은 Spring 어플리케이션 컨텍스트에서 getBean으로 빈(bean)을 사용

시 동일한 인스턴스를 생성함.

 

2. Factory 메소드를 통한 Bean 주입

① Factory 메소드로부터 빈(bean) 생성

 

- 주의 : getBean()으로 호출 시 private 생성자도 호출하여 객체를 생성한다.

그러므로 위의 상황에서 factory 메소드로만 호출 해야 객체를 얻을 수

있는 것은 아니다.

 

Posted by 조은성
,