需求:一个项目中需要链接多个数据源,(操作多个数据库数据表)
项目实战:项目是采用spring + ibatis,采用jetty容器实现。
针对jdbc和jndi实现:
jdbc我是单元测试需要使用,所以也需要配置。
jndi是web容器中的实现。
1. jdbc
a.配置数据源
b.加载配置文件的时候,需要手动设置AutowireMode类型
c. 配置dao的时候,根据不同数据库操作配置不同的sqlmapclient
<beans default-autowire="byName">
<bean id="dataSource" class="org.springframework.jdbc.datasource.SingleConnectionDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="${xx1.jdbc.url}" />
<property name="username" value="${xx1.jdbc.username}" />
<property name="password" value="${xx1.jdbc.password}" />
</bean>
<bean id="dataSourceCoop" class="org.springframework.jdbc.datasource.SingleConnectionDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="${xxcoop.jdbc.url}" />
<property name="username" value="${xxcoop.jdbc.username}" />
<property name="password" value="${xxcoop.jdbc.password}" />
</bean>
</beans>
所有单元测试类都继承该类:
import org.springframework.test.AbstractTransactionalDataSourc