* Spring은 객체를 bean으로 생성하여 관리 한다. 그래서 컨테이너가 필요한데 그래서 팩토리를 두고 있다.
BeanFactory : 빈객체를 관리하고, 각빈 객체간의 의존관계를 설정
구현체 : XmlBeanFactory : 외부 자원으로 부터 설정 정보를 읽어와 빈 객체를 생성한다.
ApplicationContext : 빈객체 라이프사이클, 파일과 같은 자원 처리 추상화, 메시지 지원 및 국제화지원, 이벤트 지원, xml스키마 확장을 통한 편리한 설정.
구현체 : ClassPathXmlApplicationContext : 클래스패스에 위치한 xml 파일로부터 설정 정보를 로딩한다.
FileSystemXmlApplicationContext : 파일 시스템에 위치한 xml 파일로부터 설정 정보를 로딩한다.
WebApplicationContext : 웹을 위한 것이며, 하나의 ServletContext마나 한개 이상을 가질수 있다.
web.xml를 통해 생성하여 사용하게 된다.
구현체 : XmlWebApplicationContext : 웹 어플리케이션에 위치한 xml 파일로 부터 설정 정보를 로딩한다.
* web.xml 설정
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/applitionContext,xml</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
...
* 생성된 XmlWebApplicationContext 객체는 WebApplicationContextUtils클래스를 이용하여 구할수 있다.
WebApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(getServletContext());
WriteArticleService writeArticleService = (WriteArticleService)context.getBean("write");
'WEB의 속삭임 > Server단의 외침' 카테고리의 다른 글
[Spring][기초]DI패턴 (0) | 2014.07.31 |
---|---|
[Java][성능]Statement 와 PreparedStatement의 차이 (0) | 2014.07.28 |