配置application.properties
spring.datasource.datasource1.jdbcUrl=jdbc:sqlserver://127.0.0.1:1433;databaseName=数据库名
spring.datasource.datasource1.username=username
spring.datasource.datasource1.password=password
spring.datasource.datasource1.driverClassNam=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.datasource.datasource2.jdbcUrl=jdbc:sqlserver://127.0.0.1:1433;databaseName=数据库名
spring.datasource.datasource2.username=username
spring.datasource.datasource2.password=password
spring.datasource.datasource2.driverClassNam=com.microsoft.sqlserver.jdbc.SQLServerDriver
编写DataSourceConfig
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.jdbc.DataSourceBuilder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
/**
* 数据源配置类,用于配置和管理应用中的数据源。
*/
@Configuration
public class DataSourceConfig {
/**
* 配置第一个数据源。
* 通过读取应用配置文件中"spring.datasource.datasource1"前缀的属性来构建数据源。
*
* @return DataSource 第一个数据源的实例
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource.datasource1")
public DataSource dataSource1() {
return DataSourceBuilder.create().build();
}
/**
* 配置第二个数据源。
* 通过读取应用配置文件中"spring.datasource.datasource2"前缀的属性来构建数据源。
*
* @return DataSource 第二个数据源的实例
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource.datasource2")
public DataSource dataSource2() {
return DataSourceBuilder.create().build();
}
}
MyBatisConfig1
package com.example.erpadmin.config;
import org.apache.ibatis.session.SqlSessionFactory;
import org.mybatis.spring.SqlSessionFactoryBean;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
import javax.sql.DataSource;
/**
* MyBatis配置类1,用于配置第一个数据源的SqlSessionFactory。
*/
@Configuration
@MapperScan(basePackages = "com.example.admin.mapper", sqlSessionFactoryRef = "sqlSessionFactory1")
public class MyBatisConfig1 {
/**
* 第一个数据源。
*/
@Autowired
@Qualifier("dataSource1")
private DataSource dataSource1;
/**
* 创建并配置第一个SqlSessionFactory。
*
* @return SqlSessionFactory配置对象
* @throws Exception 如果配置失败则抛出异常
*/
@Bean
public SqlSessionFactory sqlSessionFactory1() throws Exception {
SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();
factoryBean.setDataSource(dataSource1); // 设置数据源
factoryBean.setMapperLocations(new PathMatchingResourcePatternResolver().getResources("classpath*:mapper/*.xml")); // 设置mapper文件位置
return factoryBean.getObject(); // 返回配置的SqlSessionFactory对象
}
}
依赖
<repositories>
<repository>
<id>com.aliyun</id>
<name>aliyun</name>
<url>http://maven.aliyun.com/</url>
</repository>
</repositories>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.0</version> <!-- Check for the latest version -->
</dependency>
<!-- SQL Server JDBC Driver -->
<!-- https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc -->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<version>9.2.0.jre8</version>
</dependency>
MyBatisConfig2以上类似接下来编写mapper就好了然后在service里面调用