eGovFrame 표준프레임워크 포털

메뉴 건너띄기
상단메뉴 바로가기
본문 바로가기

이 누리집은 대한민국 공식 전자정부 누리집입니다.

본문 영역

적용 지원, FAQ, Q&A 게시판을 통해 기술 문제 해결을 지원합니다.

묻고 답하기

데이타소스를 두개 이상 사용하는 방법에 문의합니다.
  • 작성자

    손*주

  • 작성일

    2011-08-29 19:33:40

  • 조회수

    3,047

  • 구분

    개발환경

  • 진행상태

    완료

질문

현재 샘플 프로젝트를 생성하면 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를 두개이상 사용하기 위한 설정방법을 알려주시면 감사....

답변

문의하신 내용에 답변드립니다.
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>

그럼 업무에 참고하시기 바랍니다.

이 페이지의 구성

묻고 답하기