SpringBoot集成Druid数据监控

简介

DruidSpringBootStarter用于帮助轻松将Druid数据库连接池和监控集成到您的SpringBoot项目中。
本文将Druid与SpringBoot集成进行数据源监控。

德鲁伊初次介绍

Druid是阿里巴巴开发的开放的JDBC应用组件。
DruidDataSource是一个高效且可配置的数据库连接池,SQLParserSQL是一个语法解析器,Druid是Java语言中最好的数据库连接池。
Druid可以提供强大的监控和扩展功能。

下载德鲁伊

Druid是一个开源项目,源码仓库地址为https://github.com/alibaba/druid。
同时,Druid每次发布正式版本和快照时都会封存源代码,您可以从上面的下载链接找到相关版本的源代码。

DruidDataSource支持数据库

实际测试

数据库支持状况mysql支持,word支持广泛使用,广泛sqlserver支持postgres支持db2支持h2支持derby支持sqlite支持sybase支持DruidDriverClass自动检测

?Druid采用URL前缀来标识DriverClass,使得配置更加方便简洁。

前缀驱动类描述信息jdbc:odpscom.aliyun.odps.jdbc.OdpsDriverjdbc:derbyorg.apache.derby.jdbc.EmbeddedDriverjdbc:mysqlcom.mysql.jdbc.Driverjdbc:oracleoracle。
dbc.driver.OracleDriverjdbc:microsoftcom.microsoft.jdbc.sqlserver.SQLSServerDriverjdbc:sybase:Tdscom.sybase.jdbc2.jdbc.SybDriverjdbc:jtdsnet.sourceforge.jtds。
jdbc.Driverjdbc:postgresqlorg.websiteDriverjdbc:db2com.ibm.db2.jdbc.app.DB2DriverDB2的JDBCDDriver非常混乱。
bc:mckoicom.mckoi.JDBCDriverjdbc:cloudscapecom.cloudscape.core.JDBCDriverjdbc:informix-sqlicom.informix.jdbc.IfxDriverjdbc:timestencom.timesten.jdbc.TimesTenDriverjdbc:as400com.ibm.as400.access.AS400JDBCDriverjdbc:sapdbcom.sap.dbtech.jdbc.DriverSapDBjdbc:JSQLConnectcom.jnetdirect.jsql.JSQLDriverjdbc:JWTurbocom。
atlanta.jturbo.driver.Driverjdbc:firebirdsqlorg.firebirdsql.jdbc.FBDriverjdbc:interbaseinterbase.interclient.Driverjdbc:pointbasecom.pointbase.jdbc.jdbcUniiversalDriverjdbc:edbcca.edbc.jdbc.EdbcDriverjdbc:mimer:multi1com.mimer.jdbc.driverjdbc.driverjdbc:从0.1.18开始添加多个依赖项。
稍后它们将发布到maven中央存储库,因此您只需在其中添加依赖项即可。
只需要在xml中添加项目的pom依赖即可。

mysqlmysql-connector-java运行时<!--mybatis-spring-boot-starter-->org.mybatis.spring.bootmybatis-spring-boot-starter2.1.1<!--druid-->com.alibabadruid1.1.11

主要依赖实用程序使用的是druid,其他依赖MySQL和MyBatis。
方便连接数据库。

配置DruidMoniterConfig

配置Druid监控管理后端,主要用于通过WEB查看监控管理信息。
基本配置信息包括用户名、用户名密码、访问权限路径、限制IP等信息。
然后需要配置一个Web监控过滤器来过滤静态文件

/***@ClassNameDruidMoniterConfig*@Description:DruidMoniterConfig*@AuthorJavaZhan@PublicTag:JavaFull-StackArchitect*@Date2020/6/13*@VersionV10**/@Configuration公共类DruidMonitorConfig{@BeanpublicServletRegistrationBeanstatViewServlet(){ServletRegistrationBeanbean=newServletRegistrationBean(newStatViewServlet(),"/druid/*");MapinitParams=newHashMap<>();init(&puids.;登录用户名""admin");initParams.put("登录密码""admin");initParams.put("允许",");initParams.put("拒绝","192.168.127.98");bean.setInitParameters(initParams);returnbean;}@BeanpublicFilterRegistrationBeanwebStatFilter(){FilterRegistrationBeanbean=newFilterRegistrationBean();bean.setFilter(newWebStatFilter());MapinitParams=newHashMap<>();initParams.put("exclusio)ns""*.js、*.css、/druid/*");bean.setInitParameters(initParams);bean.setUrlPatterns(Arrays.asList()"/*"));returnbin;}}基本配置信息

配置文件主要包含数据源URL、数据库用户名、数据库密码、驱动类等数据源相关配置信息。

服务器端口=8888#mysqlspring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNullspring.datasource.username=tesspring.datasource.password=12456spring.datasource.driver-class-name=com.mysql.jdbc.Driverspring.datasource.type=com.alibaba.druid.pool.DruidDataSourcemybatis.mapper-locations=class-path*:map/**/*.xmlclass/***@类名demoMyBatisApplication*@description:DemoMyBatisApplication*@AuthorJavaZhan@public标签:java全栈architect*@date2020/6/13*@versionV1.0atisApplication{publicstaticvoidmain(String[]args){SpringApplication.run(DemoMyBatisApplication.class,args);}}跟踪页面

启动项目后http:///在浏览器中输入127.0.0.1:8888/druid。
/,自动跳转到http://127.0.0.1:8888/druid/login.html页面,必须输入用户名和密码信息

输入您的用户名和密码。
页面信息如下:

主要包括:数据源、SQL监控、SQL防火墙、Web应用、URI监控。
、会话跟踪、spring跟踪、JSONAPI等数据。
好了,SpringBoot的Druid数据监控集成就完成了。

总结

SpringBootDruid数据监控它集成了,方便我们分析数据库连接的数据,监控SQL。

作者简介:【小阿杰】是一位鼓捣程序员、JAVA开发者和爱好者。
公众号守护者(Java全栈架构师),欢迎关注、阅读、互动。

好的,感谢您的阅读,如果您觉得有用,请点赞收藏。
如有错误请评论并指正。
下次见。

durid不支持所有的jdbc兼容的数据库正确吗?

这种说法是不正确的。
Druid是一个开源的数据库连接池,这意味着Druid可以无缝连接到各种关系数据库,包括但不限于Oracle、MySQL、Derby、Postgresql、SQLServer和H2。
此外,Druid还针对Oracle、MySQL等特定数据库进行了优化,以提高性能和稳定性。
因此,说Druid不支持所有兼容JDBC的数据库是不正确的。