SpringBoot整合Druid完成MySQL数据访问,以及配置Druid监控模块整合

1 Druid

Druid是一个关系型数据库连接池,它是阿里巴巴的一个开源项目。Druid支持所有JDBC兼容数据库,包括了Oracle、MySQL、PostgreSQL、SQL Server、H2等。
Druid在监控、可扩展性、稳定性和性能方面具有明显的优势。通过Druid提供的监控功能,可以实时观察数据库连接池和SQL查询的工作情况。使用Druid连接池在一定程度上可以提高数据访问效率。

2 pom.xml 中添加依赖

        <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.10</version></dependency>

3 application.properties 中配制druid

spring.datasource.type=com.alibaba.druid.pool.DruidDataSource# 初始化大小,最小,最大
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
# 配置获取连接等待超时的时间
spring.datasource.maxWait=60000
# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
spring.datasource.timeBetweenEvictionRunsMillis=60000
# 配置一个连接在池中最小生存的时间,单位是毫秒
spring.datasource.minEvictableIdleTimeMillis=300000
# 校验SQL,Oracle配置 spring.datasource.validationQuery=SELECT 1 FROM DUAL,如果不配validationQuery项,则下面三项配置无用
spring.datasource.validationQuery=SELECT 'x'
spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false
# 打开PSCache,并且指定每个连接上PSCache的大小
spring.datasource.poolPreparedStatements=true
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
spring.datasource.filters=stat,wall,log4j
# 通过connectProperties属性来打开mergeSql功能;慢SQL记录
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
# 合并多个DruidDataSource的监控数据
spring.datasource.useGlobalDataSourceStat=true

4 配制druid 启动监控相关信息

import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class DruidConfiguration {@Beanpublic ServletRegistrationBean statViewServlet(){ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*");servletRegistrationBean.addInitParameter("allow","127.0.0.1");  //设置ip白名单servletRegistrationBean.addInitParameter("deny","192.168.0.19");//设置ip黑名单,优先级高于白名单//设置控制台管理用户servletRegistrationBean.addInitParameter("loginUsername","root");servletRegistrationBean.addInitParameter("loginPassword","root");//是否可以重置数据servletRegistrationBean.addInitParameter("resetEnable","false");return servletRegistrationBean;}@Beanpublic FilterRegistrationBean statFilter(){//创建过滤器FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter());//设置过滤器过滤路径filterRegistrationBean.addUrlPatterns("/*");//忽略过滤的形式filterRegistrationBean.addInitParameter("exclusions","*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");return filterRegistrationBean;}
}

5 启动项目  访问 http://localhost:8080/druid/login.html

然后输入我们在DruidConfiguration内配置的用户名密码登录监控平台,就可以进入监控平台首页

Springboot04整合Druid相关推荐

  1. SpringBoot整合JDBC、整合Druid数据源详解教程

    目录 一.整合JDBC 1. 环境准备 1. 创建数据库 2. 创建SpringBoot项目 3. IDEA连接数据库 2. 编写数据库配置信息 3. 编写测试类测试 4. CRUD操作数据库 1. ...

  2. druid ssh加密 java mysql_springboot 整合druid数据库密码加密功能的实现代码

    在之前给大家介绍过Springboot Druid 自定义加密数据库密码的几种方案,感兴趣的朋友可以点击查看下,今天通过本文给大家介绍springboot 整合druid数据库密码加密功能,具体内容如 ...

  3. 2 数据源配置_SpringBoot 整合Druid与配置数据源监控

    一:简绍 1.对于数据访问层,无论是SQL还是NOSQL 2.Spring Boot默认采用整合Spring Data的方式进行统一处理 3.添加大量自动配置,屏蔽了很多设置 1.官网描述 二:整合J ...

  4. 玩转 SpringBoot2.x 之自定义配置类整合Druid(Mybatis版)

    专题系列分类:玩转SpringBoot2.x系列教程 前言 在阅读前这篇博客之前请先移步 玩转 SpringBoot 2.x 整合 Mybatis因为我们这篇博客是在其基础之上进行讲解的.在玩转 Sp ...

  5. druid监控页面_Spring boot学习(四)Spring boot整合Druid

    前言 在上一篇博客中我们介绍了Spring boot配置Mybatis,但是并没有配置连接池,这在实际开发过程中肯定是不切实际的,多次的数据库连接会给程序和数据库都带来没必要的负担,这一篇博客我将介绍 ...

  6. mybatis mysql merge into_整合DRUID数据源+MyBatis

    整合DRUID数据源 实际的开发中,我们很少用上面那种方式的数据源. 引入DruidDataSource: com.alibaba druid 1.1.8 配置: type: com.alibaba. ...

  7. spring-boot整合druid配置

    准备:druid是阿里巴巴开源的高性能,多功能的连接池,其主要配置参数如下: 配置 缺省值 说明 name   配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配 ...

  8. SpringBoot整合Druid ---- 猿来如此容易

    SpringBoot整合Druid 原来这么容易 idea创建springboot项目 选择相关依赖 导入相关依赖 <!--日志文件--><dependencies><d ...

  9. SpringBoot一站式功能提供框架(一)整合MybatisPlus、整合Swagger Knif4j、整合Druid多数据源--柚子真好吃

    SpringBoot一站式功能提供框架(一)整合MybatisPlus.整合Swagger Knif4j.整合Druid多数据源--柚子真好吃 一.前言 二.功能描述 三.具体实现 四.开源地址 一. ...

最新文章

  1. 系统重构的10点经验总结
  2. horizon服务主要模块_OpenStack组件——Horizon Web界面管理服务
  3. verilog设计UART发送接收及各种错误仿真
  4. 2019 ICPC Asia Nanchang Regional And and Pair 组合数学
  5. navision系统和sap区别_SAP那些事-实战篇-89-浅谈金税接口方案
  6. n1运行linux,斐讯N1折腾记:运行 Linux 及优化
  7. 数据结构———>队列
  8. SpringBoot实现导入功能
  9. iText PDF设置字体样式
  10. U-Net源码上实现自己数据集的分割任务
  11. 电商数据分析的4大思维和8类指标
  12. mysql grant什么意思_MySQL grant 语法的详细解析
  13. POI导出word文件中表格合并方法(行合并,列合并)
  14. keras离线官方文档
  15. C - Recursive sequence (矩阵ksm)
  16. STM32利用定时器实现微妙延时
  17. vue中拿到接口,并获取数据,渲染到页面
  18. 薛辽中学2021高考成绩查询,运城:薛辽中学被指众多高中生没有学籍
  19. 教授、研究员、高级工程师、工程师,各系列职称体系对比
  20. 怎样在网页中嵌入word

热门文章

  1. 零基础程序员如何快速学会python
  2. 某程序员10个月时间做了30个私活单子,纯收入40万?
  3. 收藏 | 13则PyTorch使用的小窍门
  4. 干货| GitHub高赞精选Jupyter资源列表!
  5. java 旅行家的预算_旅行家的预算
  6. 长文详解基于并行计算的条件随机场CRF
  7. 实现API接口调用--来源阿里云大学-归档
  8. c语言 强制转换 作用域,C语言之总结1详解
  9. can通道采样频率_哪个是嵌入式开发中最常用的外部总线:RS232?RS485?CAN?LIN?……...
  10. python tclerror_Python Tk _tkinter.TclError:无效的命令名称“.42818376”