2개 이상의 데이타 소스를 쿼리서비스로 구현가능한지 문의드립니다.
Submitted by captain on 월, 11/16/2009 - 09:01
안녕하세요.
다름이 아니오라, 서로 다른 2개 이상의 데이타 소스에서 쿼리서비스를 이용 가능한지 문의드립니다.
설정은 이렇게 되어 있습니다.
bean id="queryService" class="anyframe.core.query.impl.QueryServiceImpl">
property name="jdbcTemplate" ref="jdbcTemplate"/>
property name="sqlRepository" ref="sqlLoader"/>
property name="lobHandler" ref="lobHandler"/>
/bean>
bean id="jdbcTemplate" class="anyframe.core.query.impl.jdbc.PagingJdbcTemplate">
property name="dataSource" ref="dataSource"/>
/bean>
언뜻 생각나는건 그대로 하나 더 만드는 것입니다.
그런데, 이렇게 되면,
서로 다른 데이타 소스에서 한 tx 단위로 CUD 를 했을때
1TX가 보장 되는지 궁금합니다.
감사합니다.


Re] 2개 이상의 데이타 소스를 쿼리서비스로 구현가능한지 문의드립니다.
쿼리서비스는 1개의 데이터소스를 기반으로 동작하도록 구현되어 있습니다. 따라서, 여러개의 데이터소스를 사용하시고자 하면 말씀하신 바와 같이 여러개의 데이터소스, 그에 상응하는 쿼리서비스를 정의하셔서 사용하셔야 합니다.
단, 하나의 트랜잭션 내에서 여러 개의 데이터소스를 이용해야 한다면, 트랜잭션 보장을 위해 JDBC 기반의 데이터소스가 아닌 JNDI 데이터소스를 사용하셔야 할 것으로 생각됩니다.