Druid Spring Boot Starter 用于帮助你在Spring Boot项目中轻松集成Druid数据库连接池和监控。本文将结合Spring Boot集成Druid,进行数据源监控。
Druid是阿里开源的一个JDBC应用组件, 其包括三部分:DruidDriver 代理Driver,能够提供基于Filter-Chain模式的插件体系; DruidDataSource 高效可管理的数据库连接池;SQLParser SQL语法分析;Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。
Druid是一个开源项目,源码托管在github上,源代码仓库地址是 github.com/alibaba/dru… 。同时每次Druid发布正式版本和快照的时候,都会把源码打包,你可以从上面的下载地址中找到相关版本的源码。
理论上说,支持所有有jdbc驱动的数据库。实际测试过的有
| 数据库 | 支持状态 |
|---|---|
| mysql | 支持,大规模使用 |
| oracle | 支持,大规模使用 |
| sqlserver | 支持 |
| postgres | 支持 |
| db2 | 支持 |
| h2 | 支持 |
| derby | 支持 |
| sqlite | 支持 |
| sybase | 支持 |
Druid是根据url前缀来识别DriverClass的,这样使得配置更方便简洁。
| 前缀 | DriverCLass | 描述信息 |
|---|---|---|
| jdbc:odps | com.aliyun.odps.jdbc.OdpsDriver |
|
| jdbc:derby | org.apache.derby.jdbc.EmbeddedDriver |
|
| jdbc:mysql | com.mysql.jdbc.Driver |
|
| jdbc:oracle | oracle.jdbc.driver.OracleDriver |
|
| jdbc:microsoft | com.microsoft.jdbc.sqlserver.SQLServerDriver |
|
| jdbc:sybase:Tds | com.sybase.jdbc2.jdbc.SybDriver |
|
| jdbc:jtds | net.sourceforge.jtds.jdbc.Driver |
|
| jdbc:postgresql | org.postgresql.Driver |
|
| jdbc:fake | com.alibaba.druid.mock.MockDriver |
|
| jdbc:mock | com.alibaba.druid.mock.MockDriver |
|
| jdbc:hsqldb | org.hsqldb.jdbcDriver |
|
| jdbc:db2 | com.ibm.db2.jdbc.app.DB2Driver | DB2的JDBC Driver十分混乱,这个匹配不一定对 |
| jdbc:sqlite | org.sqlite.JDBC |
|
| jdbc:ingres | com.ingres.jdbc.IngresDriver |
|
| jdbc:h2 | org.h2.Driver |
|
| jdbc:mckoi | com.mckoi.JDBCDriver |
|
| jdbc:cloudscape | com.cloudscape.core.JDBCDriver |
|
| jdbc:informix-sqli | com.informix.jdbc.IfxDriver |
|
| jdbc:timesten | com.timesten.jdbc.TimesTenDriver |
|
| jdbc:as400 | com.ibm.as400.access.AS400JDBCDriver |
|
| jdbc:sapdb | com.sap.dbtech.jdbc.DriverSapDB |
|
| jdbc:JSQLConnect | com.jnetdirect.jsql.JSQLDriver |
|
| jdbc:JTurbo | com.newatlanta.jturbo.driver.Driver |
|
| jdbc:firebirdsql | org.firebirdsql.jdbc.FBDriver |
|
| jdbc:interbase | interbase.interclient.Driver |
|
| jdbc:pointbase | com.pointbase.jdbc.jdbcUniversalDriver |
|
| jdbc:edbc | ca.edbc.jdbc.EdbcDriver |
|
| jdbc:mimer:multi1 | com.mimer.jdbc.Driver |
|
加入依赖
Druid 0.1.18 之后版本都发布到maven中央仓库中,所以你只需要在项目的pom.xml中加上dependency就可以了。
主要使用到的依赖是druid这个依赖,其他的是MySQL和MyBatis的依赖。方便连接数据库使用。
配置DruidMoniterConfig
配置一个Druid监控管理后台,主要是为了在WEB端可以查看监控管理信息。主要的配置信息有用户名、用户名密码、允许访问的权限路径、黑名单的IP等信息。然后需要配置一个web监控的filter,过滤静态文件
基础配置信息
配置文件主要包含数据源的URL、数据库用户名、数据库密码、驱动类等数据源相关配置信息。
启动类
监控页面
启动项目之后,在浏览器中输入 http://127.0.0.1:8888/druid/,自动跳转到http://127.0.0.1:8888/druid/login.html页面,需要输入用户名和密码信息
输入用户名和密码后,进入监控页面,页面信息如下:
主要包含:数据源、SQL监控、SQL防火墙、Web应用、URI监控、session监控、 Spring监控、 JSON API等信息。好了Spring Boot集成Druid数据监控就已经完成了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70000438/viewspace-2788916/ ,如需转载,请注明出处,否则将追究法律责任。