目录
一、数据源配置方式
1、选择数据库驱动的库文件
在maven中配置数据库驱动
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.17</version>
</dependency>
2、配置数据库连接
在application.properties中配置数据库连接
# datasource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/testdb?useUnicode=true&characterEncoding=UTF-8&useSSL=false
spring.datasource.username=testuser
spring.datasource.password=12345678
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
二、连接池配置方式
1、选择数据库连接池的库文件
SpringBoot提供了三种数据库连接池:
- HikariCP
- Commons DBCP2
- Tomcat JDBC Connection Pool
其中默认使用默认HikariCP,maven中配置如下:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>2.1.7.RELEASE</version>
</dependency>
如果不使用HikariCP,而改用Commons DBCP2,则配置如下:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-dbcp2</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>2.1.7.RELEASE</version>
<exclusions>
<exclusion>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
</exclusion>
</exclusions>
</dependency>
如果不使用HikariCP,而改用Tomcat JDBC Connection Pool,则配置如下:
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>9.0.24</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
<version>2.1.7.RELEASE</version>
<exclusions>
<exclusion>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
</exclusion>
</exclusions>
</dependency>
2、配置数据库连接池属性
由于三种数据库连接池的属性名不同,所以需要按如下方式分别配置:
spring.datasource.hikari.*= # Hikari specific settings
spring.datasource.dbcp2.*= # Commons DBCP2 specific settings
spring.datasource.tomcat.*= # Tomcat datasource specific settings
比如:
spring.datasource.tomcat.initial-size=50
spring.datasource.tomcat.max-wait=20000
spring.datasource.tomcat.max-active=300
spring.datasource.tomcat.max-idle=150
spring.datasource.tomcat.min-idle=8
spring.datasource.tomcat.default-auto-commit=true
三种数据库连接池的具体属性可参考:
http://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html
https://commons.apache.org/proper/commons-dbcp/configuration.html
https://github.com/brettwooldridge/HikariCP
spring-boot配置文件application.properties中的属性可参考:
https://docs.spring.io/spring-boot/docs/2.1.7.RELEASE/reference/html/common-application-properties.html