用java实现操作两个数据库的数据

1.首先需要在jdbc的配置文件里面配置两个数据库的连接

数据库1的配置

driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://地址:3306/数据库名?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true
username=用户名
password=密码

数据里2的配置
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://地址:3306/数据库名?useUnicode=true&characterEncoding=utf8&autoReconnect=true&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true
username=用户名
password=密码

2.需要在application.xml里面配置两个dataSource

实例如下:

连接数据库1的配置

<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${driverClassName}"></property>
<property name="url" value="${url}"></property>
<property name="username" value="${username}"></property>
<property name="password" value="${password}"></property>
</bean>

连接数据库2的配置

<bean id="dataSourceCY" class="com.alibaba.druid.pool.DruidDataSource">
<property name="driverClassName" value="${driverClassName}" />
<property name="url" value="${db.url.product}" />
<property name="username" value="${db.username.product}" />
<property name="password" value="${db.password.product}" />
</bean>

在这里注意,你可以选择一个数据库当做主数据源,那个数据库操作更方便,选择那个数据库为主数据源

配置主数据源如下:

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:mybatis-config.xml"></property>
<property name="dataSource" ref="dataSource"></property>
<property name="mapperLocations" value="classpath:com/cn/demo/mapper/*Mapper.xml"></property>
</bean>

3.写相关的类进行实现

在一个类里面引入另一个的数据源,如下:

@Resource(name = "dataSourceCY")
private DataSource dataSourceCY;

获取连接

con = dataSourceCY.getConnection();

写sql然后执行

pstmt = con.prepareStatement(sql);
ResultSet result= pstmt.executeQuery();

4.然后就可以完成数据库的交互

猜你喜欢

转载自www.cnblogs.com/yinghuanan/p/9759564.html