데이타소스를 두개 이상 사용하는 방법에 문의합니다.
- 작성자 :
- 손*주
- 작성일 :
- 2011-08-29 19:33:40
- 조회수 :
- 2,390
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
현재 샘플 프로젝트를 생성하면 hsql에 대한 데이타소스부분만 주석처리가 안되고 오라클 부분은 주석처리되어 생성됩니다.
오라클에 대한 데이타소스를 추가해서 사용하려고 하는데
현재 다음과 같이 작업했습니다
1) context-datasource.xml에 dataSource2추가
<bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@192.168.0.1:1521:PBMSDEV01"/>
<property name="username" value="amsusr"/>
<property name="password" value="ok*ams"/>
</bean>
2)context-sqlMap.xml파일 수정
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource" ref="dataSource"/>
<property name="dataSource2" ref="dataSource2"/>
</bean>
위와 같이 했을 경우 dataSource2를 찾지못한다고 나오는데 dataSource를 두개이상 사용하기 위한 설정방법을 알려주시면 감사....
오라클에 대한 데이타소스를 추가해서 사용하려고 하는데
현재 다음과 같이 작업했습니다
1) context-datasource.xml에 dataSource2추가
<bean id="dataSource2" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@192.168.0.1:1521:PBMSDEV01"/>
<property name="username" value="amsusr"/>
<property name="password" value="ok*ams"/>
</bean>
2)context-sqlMap.xml파일 수정
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource" ref="dataSource"/>
<property name="dataSource2" ref="dataSource2"/>
</bean>
위와 같이 했을 경우 dataSource2를 찾지못한다고 나오는데 dataSource를 두개이상 사용하기 위한 설정방법을 알려주시면 감사....
A
문의하신 내용에 답변드립니다.
iBatis에서 다중 데이터소스를 사용하실 때에는 데이터소스별로 sqlMapClient 를 설정해서 사용해야 합니다. 즉, context-sqlMap.xml 파일에 아래와 같이 설정하시고 테스트 해 보시기 바랍니다.
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource" ref="dataSource"/>
</bean>
<bean id="otherSqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource2" ref="dataSource2"/>
</bean>
그럼 업무에 참고하시기 바랍니다.
iBatis에서 다중 데이터소스를 사용하실 때에는 데이터소스별로 sqlMapClient 를 설정해서 사용해야 합니다. 즉, context-sqlMap.xml 파일에 아래와 같이 설정하시고 테스트 해 보시기 바랍니다.
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource" ref="dataSource"/>
</bean>
<bean id="otherSqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/rte/sql-map-config.xml"/>
<property name="dataSource2" ref="dataSource2"/>
</bean>
그럼 업무에 참고하시기 바랍니다.