springboot的DruidDataSource 数据库配置
时间: 2025-06-29 12:22:07 浏览: 10
### Spring Boot 中配置 DruidDataSource 进行数据库连接
在 Spring Boot 项目中配置 `DruidDataSource` 可以显著提升数据库操作的安全性和性能。以下是详细的配置方法:
#### 使用 `druid-spring-boot-starter`
为了简化集成过程,推荐使用 `druid-spring-boot-starter` 来自动装配 Druid 数据源[^1]。
首先,在项目的 `pom.xml` 文件中引入依赖项:
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
```
接着,在 `application.properties` 或者 `application.yml` 文件里设置必要的参数:
对于 `.properties` 文件:
```properties
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# Druid specific properties
spring.datasource.druid.initial-size=5
spring.datasource.druid.min-idle=5
spring.datasource.druid.max-active=20
spring.datasource.druid.test-on-borrow=true
```
而对于 `.yml` 文件,则可以这样写:
```yaml
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username: root
password: password
driver-class-name: com.mysql.cj.jdbc.Driver
druid:
initial-size: 5
min-idle: 5
max-active: 20
test-on-borrow: true
```
上述配置不仅指定了 JDBC URL、用户名和密码等基本信息,还设置了关于连接池大小以及是否开启借出前检测等功能选项。
如果想要自定义更多高级特性或是处理特殊情况下的需求,比如多数据源支持或动态切换数据源场景下,则可能需要进一步扩展配置逻辑甚至编写额外的支持类[^4]。
最后,可以通过简单的单元测试验证配置是否生效:
```java
@SpringBootTest
public class DruidTest {
@Autowired
private DataSource dataSource;
@Test
void contextLoads() throws SQLException {
System.out.println(dataSource.getClass());
Connection conn = null;
try{
conn = dataSource.getConnection();
System.out.println("Connection established successfully.");
} finally {
if (conn != null && !conn.isClosed()) {
conn.close();
}
}
}
}
```
这段代码会打印出实际使用的 `DataSource` 类型,并尝试建立一次数据库连接来确认一切正常工作。
阅读全文
相关推荐


















