Druid是阿里开元的数据源,相较于c3p0,dbcp等数据源具有强大的后台监控功能,刚好最近在学习springboot,涉及到Druid的知识,所以记录一下。

springboot实现后台监控主要分为三个步骤:

  1. 配置pom文件与application.yaml文件;
  2. 绑定yaml文件,连接Druid;
  3. 自定义后台监控配置。

1.配置pom文件与application.yaml文件

(1)配置pom文件

pom文件需要引入Druid的依赖,如下:

<!-- druid -->
<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.10</version>
</dependency>

也可直接去Maven库中直接查找最新的依赖,链接如下:

https://mvnrepository.com/artifact/com.alibaba/druid

(2)配置application.yaml文件

spring:datasource:username: name  #数据库用户名password: psw   #数据库密码url: jdbc:mysql://localhost:3306/?user=namedriver-class-name: com.mysql.cj.jdbc.Driver#引入Druid数据源type: com.alibaba.druid.pool.DruidDataSource#SpringBoot默认是不注入这些的,需要自己绑定#druid数据源专有配置initialSize: 5minIdle: 5maxActive: 20maxWait: 60000timeBetweenEvictionRunsMillis: 60000minEvictableIdleTimeMillis: 300000validationQuery: SELECT 1 FROM DUALtestWhileIdle: truetestOnBorrow: falsetestOnReturn: falsepoolPreparedStatements: true#配置监控统计拦截的filters,stat:监控统计、log4j:日志记录、wall:防御sql注入#如果允许报错,java.lang.ClassNotFoundException: org.apache.Log4j.Properity#则导入log4j 依赖就行filters: stat,wall,log4jmaxPoolPreparedStatementPerConnectionSize: 20useGlobalDataSourceStat: trueconnectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

2.绑定yaml文件,连接Druid

创建Config文件之后, 在自定义后台监控之前需要先绑定yaml文件,连接Druid:

@ConfigurationProperties(prefix = "spring.datasource")  //绑定yaml文件中定义的数据源
@Bean
public DataSource druidDataSource(){return new DruidDataSource();
}

3.自定义后台监控配置

后台监控类ServletRegistrationBean继承自DynamicRegistrationBean,进行配置的方法可以DynamicRegistrationBean中查看,这里做的工作只是将其重写。

//后台监控:web.xml, ServletRegistrationBean
//因为SpringBoot内置了servlet容器,所以没有web.xml,替代方法:ServletRegistrationBean
@Bean
public ServletRegistrationBean monitor(){ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");//查看后台控制需要登录,下文进行账号密码设置HashMap<String, String> initParameters = new HashMap<>();//增加配置initParameters.put("loginUsername","admin");  //登录的key是固定的initParameters.put("loginPassword", "123456");  //密码的key是固定的//允许谁能访问initParameters.put("allow", ""); //为空时,所有人都可访问//禁止谁能访问 initParameters.put("zhangsan", "IP地址")bean.setInitParameters(initParameters);return bean;}

4.后台监控效果

可通过localhost:8080/druid/进入后台控制的登录界面

通过自定义的用户名密码登录后台控制界面

可在Druid Monitor中查看数据源,监控SQL,URL等,功能还是非常强大的。

Druid后台监控与过滤器相关推荐

  1. 德鲁伊(Druid)后台监控配置详细操作。生产环境定位问题方法

    前言 从写System.out.println("hello world!")开始,到现在我一直认为,一个项目的系统上线,完成CURD(增删改查)的代码远远不够.为便于项目快速定位 ...

  2. 配置Druid数据源监控

    Druid 数据源具有监控的功能,并提供了一个 web 界面方便用户查看. 所以第一步需要设置 Druid 的后台管理页面,比如 登录账号.密码 等:配置后台管理: //配置 Druid 监控管理后台 ...

  3. druid的后台监控

    Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目.Druid支持所有JDBC兼容的数据库,包括Oracle.MySQL.Derby.PostgreSQL.SQL Server.H2等.D ...

  4. 数据库连接池 ( 五 ) Druid 数据监控

    4.Druid 数据监控 4.0.Druid 监控参数 参数 值 含义 ActiveCount 0 当前连接池中活跃连接数 ActivePeak 1 连接池中活跃连接数峰值 ActivePeakTim ...

  5. 阿里开源mysql监控_Alibaba-技术专区-开源项目之Druid数据库监控平台

    一. 介绍: DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对 ...

  6. Delphi编写后台监控软件

    Delphi编写后台监控软件 文章来源:Delphi程序员之家   后台监控软件,为了达到隐蔽监控的目的,应该满足正常运行时,不显示在任务栏上,在按Ctrl+Alt+Del出现的任务列表中也不显示,管 ...

  7. druid dubbo 生产者_dubbo项目扩展druid sql监控

    最近在项目中采用dubbo来管理服务,但是数据库连接池这一块采用druid,网上配置druid  sql监控的都是基于web.xml配置,需要servlet容器支持,但是dubbo项目服务端这边一般不 ...

  8. Druid Monitor监控Java Web和Java SE项目

    Druid Monitor 对于数据源,大家已经接触了不少了.比如c3p0.dhcp.proxool等,之后又发现使用tomcat-jdbc可以大大的提高性能.但是针对于我们的高并发的系统来说,总希望 ...

  9. 简单的实现app界面劫持和后台监控

    如今越来越多的手机玩家都为了折腾一些稀奇古怪的东西,或出于好奇,或出于贪心,往往会root手机去尝试安装一些外挂,刷分,刷粉,修改版等等乱七八糟的东西 正因为此类用户的存在,一些小人就盯上了这方面的市 ...

最新文章

  1. 微众WeCross 跨链平台(7)跨链路由
  2. optee中的密码学算法注册模型
  3. axios封装_VUE.JS请求工具Axios的封装
  4. 单调队列优化和决策单调性优化
  5. win10装python3.6_win10+python3.6,安装tensorflow
  6. 【ES】CURL 操作 ES命令集合
  7. 杭电 4907 Task schedule ·
  8. ArcGIS GDB中要素类不可编辑
  9. 利用阿里云提供的镜像快速更换本地的yum源
  10. arcgis导出地图分辨率多少合适_地图册制作:ArcGIS分幅制图——以深圳地铁线路图为例...
  11. oracle mysql认证考试流程_报考oraclemysql认证考试流程
  12. 条码打印工具-Bartender的使用
  13. c语言工程师专业分析,一个资深c语言工程师说如何学习c语言.pdf
  14. 溯源项目(全套源码)
  15. woj 1567 - D - Sloth's Angry(贪心)
  16. 关于阿里云OOS文件上传的一些问题
  17. Markdown实用快捷键
  18. VScode启动流程
  19. linux重装xorg,菜鸟恢复xorg.conf的菜方法
  20. mac 使用的小技巧

热门文章

  1. php 复制文件夹并压缩到最小_php获取所有文件并压缩
  2. 计算机类所有一级刊物,核心期刊介绍
  3. python安装matplotlib库三种失败情况
  4. Factory Method
  5. Ghost超级技巧一家亲
  6. 狂乱的潇洒主义者,频繁的追求自由者!
  7. 前端规范 - 前端项目开发规范
  8. 使用Python二次开发S3D 查询当前选择元素基本信息
  9. PPT做的图插入word变糊解决方案
  10. 【kafka 监控】Kafka_exporter+prometheus 监控kafka数据