一)背景
由于项目中有用到多数据源方式,所以把该功能单独摘取出来,便于理解。
二)实现步骤
1、先在pom.xml中引入DruidDataSource相关的jar,引入的是1.1.17版本
备注:引用了oracle的jar。引入mybatis的jar是因为和druid有依赖关系,也可以结合mybatis使用。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.oysept.springboot</groupId>
<artifactId>oysept-springboot-druiddatasource</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>oysept-springboot-druiddatasource</name>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.0.RELEASE</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- mybatis start -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
<!-- mybatis end -->
<!-- oracle start -->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
<!-- oracle end -->
<!-- druid jar -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.17</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
2、在application.properties中配置oracle数据源(只配置基本必须项)
备注:配置了一个主数据源和两个从数据源,好区分测试。
由于该功能只是测试,所有数据源都配置成了一致,在调用时可区分,该项目是运行使用过的。
server.port=8080
spring.datasource.druid.primary.driver-class-name=oracle.jdbc.driver.OracleDriver
spring.datasource.druid.primary.url=jdbc:oracle:thin:@localhost:1521/oysept
spring.datasource.druid.primary.username=oysept
spring.datasource.druid.primary.password=oysept
spring.datasource.druid.one.driver-class-name=oracle.jdbc.driver.OracleDriver