Springboot中加入druid连接池

 更新时间:2022年01月11日 09:56:29   作者:yhntgbv  
这篇文章主要介绍了Springboot中加入druid连接池,Druid是目前最好的数据库连接池。在功能、性能、扩展性方面,都超过其他数据库连接池,同时加入了日志监控,下面来看看文章的具体内容吧

1.DRUID连接池介绍

Druid是阿里巴巴开发的号称为监控而生的数据库连接池,Druid是目前最好的数据库连接池。
在功能、性能、扩展性方面,都超过其他数据库连接池,同时加入了日志监控,
可以很好的监控DB池连接和SQL的执行情况。

2.DRUID 的参数

jdbcUrl 连接数据库的url:mysql : jdbc:mysql://localhost:3306/test
username 数据库的用户名
password 数据库的密码
driverClassName 驱动类名。根据url自动识别,这一项可配可不配,如果不配置druid会根据url自动识别dbType

driverClassName的配置:

  •         initialSize初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次         getConnection
  • ​        maxActive 最大连接池数量
  • ​        maxIdle 已经不再使用,配置了也没效果
  • ​        minIdle 最小连接池数量
  •         ​maxWait 获取连接时最大等待时间,单位毫秒

3.配置依赖

   

    <!-- Druid依赖 -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.8</version>
        </dependency>
 
        <!-- log4j 不加此依赖Druid的filters拦截会报错 在properties配置文件中filters中有体现 -->
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

4.添加文件

application.yml或者application.properties文件中添加(两者文件本质上是相同的,建议采用yml文件)

#数据库连接池druid配置
spring:
  #数据源
  datasource:
    #1.JDBC
    type: com.alibaba.druid.pool.DruidDataSource
    #驱动类
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/t263?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
    username: root
    password: 123
    druid:
      #2.连接池配置
      #初始化连接池的连接数量 大小,最小,最大
      initial-size: 5
      min-idle: 5
      max-active: 20
      #配置获取连接等待超时的时间
      max-wait: 60000
      #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
      time-between-eviction-runs-millis: 60000
      # 配置一个连接在池中最小生存的时间,单位是毫秒
      min-evictable-idle-time-millis: 30000
      validation-query: SELECT 1 FROM DUAL
      test-while-idle: true
      test-on-borrow: true
      test-on-return: false
      # 是否缓存preparedStatement,也就是PSCache  官方建议MySQL下建议关闭   个人建议如果想用SQL防火墙 建议打开
      pool-prepared-statements: true
      max-pool-prepared-statement-per-connection-size: 20
      # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
      filter:
        stat:
          merge-sql: true
          slow-sql-millis: 5000
      #3.基础监控配置
      web-stat-filter:
        enabled: true
        url-pattern: /*
        #设置不统计哪些URL
        exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
        session-stat-enable: true
        session-stat-max-count: 100
      stat-view-servlet:
        enabled: true
        url-pattern: /druid/*
        reset-enable: true
        #设置监控页面的登录名和密码
        login-username: admin
        login-password: admin
        allow: 127.0.0.1

到此这篇关于Springboot中加入druid连接池的文章就介绍到这了,更多相关Springboot中加入druid连接池内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Eclipse中改变默认的workspace的方法及说明详解

    Eclipse中改变默认的workspace的方法及说明详解

    eclipse中改变默然的workspace的方法有哪几种呢?接下来脚本之家小编给大家介绍Eclipse中改变默认的workspace的方法及说明,对eclipse改变workspace相关知识感兴趣的朋友一起学习吧
    2016-04-04
  • Java如何不解压读取.zip的文件内容

    Java如何不解压读取.zip的文件内容

    这篇文章主要给大家介绍了关于Java如何不解压读取.zip的文件内容的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • java实现网站微信扫码支付

    java实现网站微信扫码支付

    这篇文章主要为大家详细介绍了java实现网站微信扫码支付,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Java获取支付宝OpenID的实现方法

    Java获取支付宝OpenID的实现方法

    在Java中,通过支付宝开放平台API可以获取用户的OpenID,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-09-09
  • SpringBoot 图形验证码的生成和校验

    SpringBoot 图形验证码的生成和校验

    随着系统和业务的不停升级,前后端代码放在一起的项目越来越臃肿,已经无法快速迭代和职责区分了,于是纷纷投入了前后端分离的怀抱,发现代码和职责分离以后,开发效率越来越高了,但是以前的验证码登录方案就要更改了。本文来看一下SpringBoot 图形验证码的生成和校验
    2021-05-05
  • Java Socket编程实例(五)- NIO UDP实践

    Java Socket编程实例(五)- NIO UDP实践

    这篇文章主要讲解Java Socket编程中NIO UDP的实例,希望能给大家做一个参考。
    2016-06-06
  • ShardingSphere数据分片算法及测试实战

    ShardingSphere数据分片算法及测试实战

    这篇文章主要为大家介绍了ShardingSphere数据分片算法及测试实战示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • spring-boot2.7.8添加swagger的案例详解

    spring-boot2.7.8添加swagger的案例详解

    这篇文章主要介绍了spring-boot2.7.8添加swagger的案例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-01-01
  • Java 根据XPATH批量替换XML节点中的值

    Java 根据XPATH批量替换XML节点中的值

    这篇文章主要介绍了Java根据XPATH批量替换XML节点中的值,文章围绕主题展开详细的内容介绍,具有一定的参考价值,需要的小伙伴可以参考一下
    2022-09-09
  • Java本地缓存工具之LoadingCache的使用详解

    Java本地缓存工具之LoadingCache的使用详解

    缓存,在我们日常开发中是必不可少的一种解决性能问题的方法。简单的说,cache 就是为了提升系统性能而开辟的一块内存空间。本文将为大家介绍一个Java本地缓存的工具——LoadingCache,感兴趣的可以了解一下
    2021-12-12

最新评论