springboot德鲁伊数据源配置
时间: 2025-05-04 22:58:26 浏览: 28
### 如何在 Spring Boot 中配置 Druid 数据源
#### 1. 添加依赖
为了在 Spring Boot 应用程序中集成 Druid 数据库连接池,首先需要引入 `druid-spring-boot-starter` 或者手动管理 Druid 的 Maven/Gradle 依赖项。
以下是基于 Maven 的依赖示例:
```xml
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.8</version>
</dependency>
```
对于 Gradle 用户,则可以添加以下内容到构建文件中:
```gradle
implementation 'com.alibaba:druid-spring-boot-starter:1.2.8'
```
#### 2. 配置 application.properties 文件
在项目的 `application.properties` 或 `application.yml` 文件中完成基本的数据源配置。下面是一个典型的 `application.properties` 配置示例:
```properties
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/test_db?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=password
# Druid 特定配置
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
spring.datasource.maxWait=60000
spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.validationQuery=SELECT 1 FROM DUAL
spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false
spring.datasource.filters=stat,wall,slf4j
```
上述配置中的 `filters` 参数指定了启用的功能模块,例如 `stat` 表示性能统计功能,而 `wall` 则表示防火墙功能[^1]。
#### 3. 自定义数据源 Bean (可选)
如果需要进一步自定义数据源的行为,可以通过 Java 配置类来实现。例如,在某些场景下可能需要动态调整属性或者初始化额外的过滤器。
下面是创建自定义数据源的一个例子:
```java
import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class DataSourceConfig {
@ConfigurationProperties(prefix = "spring.datasource")
@Bean
public DataSource dataSource() {
DruidDataSource druidDataSource = new DruidDataSource();
// 设置 filters 属性值为 stat,开启 SQL 监控
druidDataSource.setFilters("stat");
return druidDataSource;
}
}
```
此代码片段展示了如何通过编程方式设置 Druid 数据源并激活 SQL 统计监控功能。
#### 4. 启用 Web 控制台(StatViewServlet 和 Filter)
Druid 提供了一个内置的 Web 控制台用于实时查看数据库连接状态和其他指标信息。要启用这些特性,需在 `application.properties` 中增加如下配置:
```properties
# 开启 StatFilter 进行 SQL 监控
spring.datasource.filter.stat.enabled=true
# 配置 StatViewServlet 显示页面访问路径
spring.datasource.stat-view-servlet.url-pattern=/druid/*
spring.datasource.stat-view-servlet.loginUsername=admin
spring.datasource.stat-view-servlet.loginPassword=admin123
```
以上配置会启动一个位于 `/druid/*` 路径下的控制面板,并要求登录认证才能访问[^4]。
---
### 总结
通过上述步骤即可成功地将 Alibaba Druid 整合至 Spring Boot 项目之中,从而获得高性能且易于维护的数据库连接解决方案。此外,借助于 Aliyun 官方推出的 `druid-spring-boot-starter` 工具包,能够极大地减少繁琐的手动编码工作量[^2]。
阅读全文
相关推荐


















