多数据源的配置,调用

datasource.xml如下
。。。<!-- 第一个数据源开始 -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="url" value="jdbc:oracle:thin:@10.197.160.1:1521:ora9"></property>
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
        <property name="username" value="dang_cargo" />
        <property name="password" value="gns928" />
        <property name="minIdle" value="10" />
        <property name="maxActive" value="20" />
        <property name="maxWait" value="1000" />
        <property name="removeAbandonedTimeout" value="60" />
        <property name="removeAbandoned" value="true" />
        <property name="logAbandoned" value="true" />
    </bean>
    <bean parent="bdf2.dataSourceRegister">
        <property name="dataSource" ref="dataSource" />
        <property name="name" value="oracle" />
        <property name="asDefault" value="true" />
    </bean>
    <bean id="sessionFactory" parent="bdf2.sessionFactory">
        <property name="dataSourceName" value="oracle" />
        <property name="entityInterceptor" ref="bdf2.unByteCodeProxyInterceptor" />
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.Oracle8iDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">update</prop>
            </props>
        </property>
        <property name="packagesToScan">
            <list>
                <value>DangCargo/bean</value>
            </list>
        </property>
        <property name="useTransactionAwareDataSource" value="true"/>
    </bean>
    <!-- 第一个数据源结束 -->

    <!-- 第二个数据源开始 -->
    <bean id="dataSourceIT" class="org.apache.commons.dbcp.BasicDataSource">
        <property name="url" value="jdbc:oracle:thin:@10.197.160.5:1521:ora9"></property>
        <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />
        <property name="username" value="it" />
        <property name="password" value="gns928" />
        <property name="minIdle" value="10" />
        <property name="maxActive" value="20" />
        <property name="maxWait" value="1000" />
        <property name="removeAbandonedTimeout" value="60" />
        <property name="removeAbandoned" value="true" />
        <property name="logAbandoned" value="true" />
    </bean>
    <bean parent="bdf2.dataSourceRegister">
        <property name="dataSource" ref="dataSourceIT" />
        <property name="name" value="oracleIT" />
        <property name="asDefault" value="false" />
    </bean>
    <bean id="sessionFactoryIT" parent="bdf2.sessionFactory">
        <property name="dataSourceName" value="IT" />
        <property name="entityInterceptor" ref="bdf2.unByteCodeProxyInterceptor" />
        <property name="hibernateProperties">
            <props>
                <prop key="hibernate.dialect">org.hibernate.dialect.Oracle8iDialect</prop>
                <prop key="hibernate.show_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">none</prop>
            </props>
        </property>
        <property name="packagesToScan">
            <list>
                <value>DangCargo/bean</value>
                <value>IT/bean</value>
            </list>
        </property>
        <property name="useTransactionAwareDataSource" value="true"/>
    </bean>
    <!-- 第二个数据源结束 -->
dao,如下
1
package IT.dao;
import org.springframework.stereotype.Component;
import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
@Component
public class TipServerDao extends HibernateDao {
    @Override
    protected String getModuleFixDataSourceName(){
        return "dataSourceIT";
    }
}
 
2
package DangCargo.dao;
import org.springframework.stereotype.Component;
import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
@Component
public class TdcDao extends HibernateDao {

}
但运行时只能访问其中一个库,请帮忙看看那里有错!!!
 
 
已邀请:

WilliamJiang

赞同来自:

配置正常,你的错误是什么,请贴出详情

Rom

赞同来自:

过了,修改 dao 
return "IT";

要回复问题请先登录注册