Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/drtrang/druid-spring-boot
Spring Boot Starter for Druid.
https://github.com/drtrang/druid-spring-boot
druid spring-boot spring-boot-starter
Last synced: 10 days ago
JSON representation
Spring Boot Starter for Druid.
- Host: GitHub
- URL: https://github.com/drtrang/druid-spring-boot
- Owner: drtrang
- License: apache-2.0
- Created: 2017-07-11T03:22:26.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2020-02-13T11:23:35.000Z (over 4 years ago)
- Last Synced: 2024-04-16T17:17:37.762Z (7 months ago)
- Topics: druid, spring-boot, spring-boot-starter
- Language: Java
- Homepage:
- Size: 327 KB
- Stars: 314
- Watchers: 21
- Forks: 84
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- License: LICENSE
Awesome Lists containing this project
README
# Druid Spring Boot Starter
[![Build Status](https://img.shields.io/travis/drtrang/druid-spring-boot/master.svg?style=flat-square)](https://www.travis-ci.org/drtrang/druid-spring-boot)
[![Coverage Status](https://img.shields.io/coveralls/drtrang/druid-spring-boot/master.svg?style=flat-square)](https://coveralls.io/github/drtrang/druid-spring-boot?branch=master)
[![Maven Central](https://img.shields.io/maven-central/v/com.github.drtrang/druid-spring-boot.svg?style=flat-square)](https://maven-badges.herokuapp.com/maven-central/com.github.drtrang/druid-spring-boot)
[![GitHub Release](https://img.shields.io/github/release/drtrang/druid-spring-boot.svg?style=flat-square)](https://github.com/drtrang/druid-spring-boot/releases)
[![License](http://img.shields.io/badge/license-apache%202-blue.svg?style=flat-square)](https://github.com/drtrang/druid-spring-boot/blob/master/LICENSE)Druid Spring Boot Starter 将帮助你在 Spring Boot 中使用 Druid。
## 依赖
```xmlcom.github.drtrang
druid-spring-boot-starter
1.1.10com.github.drtrang
druid-spring-boot-actuator-starter
1.1.10com.github.drtrang
druid-spring-boot2-starter
1.1.10com.github.drtrang
druid-spring-boot2-actuator-starter
1.1.10```
## 意见征集
[意见征集](https://github.com/drtrang/druid-spring-boot/issues/10)## NEW !
1. 基于 Spring Boot 2 开发的全新 starter,与之前功能完全一致
2. 改进多数据源的声明方式,由 Starter 自动发现配置并注册到 ApplicationContext,详情请查看 [Druid 多数据源支持.md](https://github.com/drtrang/druid-spring-boot/tree/master/docs/Druid%20%E5%A4%9A%E6%95%B0%E6%8D%AE%E6%BA%90%E6%94%AF%E6%8C%81.md)
3. 新增全配置说明 [druid.yml](https://github.com/drtrang/druid-spring-boot/blob/master/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/druid.yml)## 配置
### 简单配置
在引入依赖的情况下,只需如下配置即可使用 Druid:```yaml
spring:
datasource:
url: jdbc:h2:mem:example
username: root
password: 123456
```### Druid 连接池
Druid Spring Boot Starter 会将以 `spring.datasource.druid` 为前缀的配置注入到 DruidDataSource,且 DruidDataSource 中的所有参数均可自定义。```yaml
spring:
datasource:
url: jdbc:h2:mem:example
username: root
password: 123456
druid:
max-wait: 30000
query-timeout: 10
validation-query: SELECT 1
use-global-data-source-stat: true
```### Druid 高级特性
Druid Spring Boot Starter 添加了 Druid 的大部分特性,如 StatFilter、WallFilter、ConfigFilter、WebStatFilter 等,其中 StatFilter 默认打开,其它特性默认关闭,需要手动开启。同样,每个特性的参数均可自定义,具体配置可以用 IDE 的自动提示功能或者阅读 Druid 的 [Wiki](https://github.com/alibaba/druid/wiki/%E9%A6%96%E9%A1%B5) 查看。
```yaml
spring:
datasource:
druid:
# 开启 StatFilter,默认开启,可通过 'enabled: false' 关闭
stat:
enabled: true
log-slow-sql: true
slow-sql-millis: 1000
# 开启 Slf4jFilter
slf4j:
enabled: true
data-source-log-enabled: false
connection-log-enabled: false
statement-log-enabled: false
result-set-log-enabled: false
# 开启 WallFilter
wall:
enabled: true
log-violation: true
throw-exception: false
## WallConfig 配置
config:
delete-where-none-check: true
# 开启 ConfigFilter
config:
enabled: true
# 开启 Web 监控
web-stat:
enabled: true
# 开启 Aop 监控
aop-stat:
enabled: true
# 开启监控页面
stat-view-servlet:
enabled: true
```### 多数据源
1.1.2 版本改进了多数据源的声明方式,由 Starter 自动发现配置并注册到 ApplicationContext,详情请查看 [Druid 多数据源支持.md](https://github.com/drtrang/druid-spring-boot/tree/master/docs/Druid%20%E5%A4%9A%E6%95%B0%E6%8D%AE%E6%BA%90%E6%94%AF%E6%8C%81.md)。```yaml
spring:
datasource:
druid:
data-sources:
master:
url: jdbc:h2:file:./master
slave:
url: jdbc:h2:file:./slave
```### 配置示例
[application.yml](https://github.com/drtrang/druid-spring-boot/blob/master/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/application.yml)### 全配置说明
[druid.yml](https://github.com/drtrang/druid-spring-boot/blob/master/druid-spring-boot-example/druid-spring-boot-mybatis-example/src/main/resources/druid.yml)## 自动提示
Druid Spring Boot Starter 基于 `spring-boot-configuration-processor` 模块,支持 IDE 的自动提示。自定义参数:
![druid-configuration](https://user-images.githubusercontent.com/13851701/28149522-c1a3fc96-67c0-11e7-8ea7-630a8b3e5bfb.png)参数说明:
![enabled](https://user-images.githubusercontent.com/13851701/28149525-d08955bc-67c0-11e7-916c-c8c5acd30b4a.png)参数枚举值:
![db-type](https://user-images.githubusercontent.com/13851701/28148904-3bb9b07a-67bc-11e7-9912-c7043c2d7de7.png)## 演示
[druid-spring-boot-example](https://github.com/drtrang/druid-spring-boot/tree/master/druid-spring-boot-example) 中演示了 Druid Spring Boot Starter 的使用方式,可以作为参考。## Change Log
[Release Notes](https://github.com/drtrang/druid-spring-boot/releases)## TODO
任何意见和建议可以提 [ISSUE](https://github.com/drtrang/druid-spring-boot/issues),我会酌情加到 [TODO List](https://github.com/drtrang/druid-spring-boot/blob/master/TODO.md),一般情况一周内迭代完毕。## About Me
QQ:349096849
Email:[email protected]
Blog:[Trang's Blog](http://blog.trang.space)