아는 만큼 보인다/Spring Framework
스프링이 빈 오브젝트를 생성하는 방법
eyevsky
2012. 6. 12. 14:03
1. 일반 클래스가 빈의 클래스로 지정된 경우
빈 오브젝트 => Class.forName("지정된 클래스 이름").newInstance();
빈 타입 => 지정된 클래스 타입
2. FactoryBean<T> 인터페이스를 구현한 클래스가 빈의 클래스로 지정된 경우
빈 오브젝트 => FactoryBean오브젝트.getObject();
빈 타입 => FactoryBean오브젝트.getObjectType();
3. BeanPostProcessor(빈후처리기) 인터페이스를 구현한 클래스가 빈의 클래스로 지정된 경우
빈 오브젝트 => 생성된 빈이 후처리 대상인 경우,
Proxy.newProxyInstance(..)로 생성한 프록시 오브젝트로 대체한다.
빈 타입 => 대체할 빈과 같은 인터페이스 타입