검색결과 리스트
Spring에 해당되는 글 1건
- 2009.03.23 apache common configuration spring에 통합하기 1
글
apache common configuration spring에 통합하기
spring
2009. 3. 23. 13:59
apache common프로젝트 하위에 xml을 통해서 설정을 간단히 처리 할 수 있는
configuration 모듈을 제공하고 있다.
이를 spring에 통합하여 사용하는 방법을 소개한다.
-- 사전준비 --
1. apache common configuration다운로드
-사이트참조
2. springmodules다운로드
- 사이트참조
3. spring모듈
- 별도의 설명은 하지 않음.
1. spring context파일에 PlaceholderConfigurer 선언
(주의사항, 특정 configuration xml파일에서 <xml fileName="" />을 사용하는경우
spring context파일에서 해당 설정값을 ${common.targetElement} 형식으로 사용하지 못한다.
각각의 xml파일을 load하도록 선언에 명시해줘야함.)
2번에서 config-core.xml은 다은과 같이 선언되어 있음.
4. 주의사항
- 설정xml파일의 위치는 spring context파일이 위치하고 있는 경로에서 상대경로로 접근.
configuration 모듈을 제공하고 있다.
이를 spring에 통합하여 사용하는 방법을 소개한다.
-- 사전준비 --
1. apache common configuration다운로드
-사이트참조
2. springmodules다운로드
- 사이트참조
3. spring모듈
- 별도의 설명은 하지 않음.
1. spring context파일에 PlaceholderConfigurer 선언
<bean class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">2. springmodules를 이용하여 apache common configuration 설정파일 로드하는 Bean설정
<property name="properties">
<bean class="org.springmodules.commons.configuration.CommonsConfigurationFactoryBean">
<property name="configurations">
<list>
<ref bean="configuration" />
</list>
</property>
</bean>
</property>
</bean>
(주의사항, 특정 configuration xml파일에서 <xml fileName="" />을 사용하는경우
spring context파일에서 해당 설정값을 ${common.targetElement} 형식으로 사용하지 못한다.
각각의 xml파일을 load하도록 선언에 명시해줘야함.)
<bean id="configuration" class="org.apache.commons.configuration.CompositeConfiguration">3. 설정사용
<constructor-arg>
<list>
<!-- [S] 실서버 환경 설정 -->
<bean class="org.apache.commons.configuration.XMLConfiguration">
<constructor-arg type="java.lang.String">
<value>../config/common/config-core.xml</value>
</constructor-arg>
</bean>
<bean class="org.apache.commons.configuration.XMLConfiguration">
<constructor-arg type="java.lang.String">
<value>../config/common/config-opt.xml</value>
</constructor-arg>
</bean>
<!-- [E] 실서버 환경 설정 -->
</list>
</constructor-arg>
</bean>
2번에서 config-core.xml은 다은과 같이 선언되어 있음.
<configuration>
<database>
<driver></driver>
<url></url>
<username></username>
<password></password>
<init-size></init-size>
<max-size></init-size>
</database>
</configuration>
<database>
<driver></driver>
<url></url>
<username></username>
<password></password>
<init-size></init-size>
<max-size></init-size>
</database>
</configuration>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${database.driver}"/>
<property name="url" value="${database.url}"/>
<property name="username" value="${database.username}"/>
<property name="password" value="${database.password}"/>
<property name="initialSize" value="${database.init-size}"/>
<property name="maxActive" value="${database.max-size}"/>
</bean>
4. 주의사항
- apache configuration 최신버전 사용 권장
(각각의 version을 전부 확인하지 못했으나, 1.0버전에선 CompositeConfiguration 클래스의 생성자중 Collection Configuration 을 argumement로 하는 생성자가 없어 에러발생함.
(각각의 version을 전부 확인하지 못했으나, 1.0버전에선 CompositeConfiguration 클래스의 생성자중 Collection Configuration 을 argumement로 하는 생성자가 없어 에러발생함.
- 설정xml파일의 위치는 spring context파일이 위치하고 있는 경로에서 상대경로로 접근.