SpringBoot集成Druid的实例代码

 更新时间:2021年12月17日 15:07:28   作者:胖达利亚  
这篇文章主要介绍了SpringBoot集成Druid的实例代码,有依赖和配置相关内容,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下

快速开始

依赖

<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.17</version>
        </dependency>

如果需要配置日志:

 <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
        </dependency>

配置

spring:
  datasource:
    name: druidDataSource
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://localhost:3306/databasename?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8
      username: root
      password: 12341234
      #属性类型是字符串,通过别名的方式配置扩展插件,常用的插件有:
      #监控统计用的filter:stat
      #日志用的filter:log4j
      #防御sql注入的filter:wall
      filters: stat,wall,log4j
      #初始化时建立物理连接的个数。初始化发生在显示调用init方法,或者第一次getConnection时
      initialSize: 10
      #最小连接池数量
      minIdle: 10
      #最大连接池数量
      maxActive: 100
      #获取连接时最大等待时间,单位毫秒。配置了maxWait之后,缺省启用公平锁,并发效率会有所下降,如果需要可以通过配置useUnfairLock属性为true使用非公平锁。
      maxWait: 60000
      #有两个含义:
      #1) Destroy线程会检测连接的间隔时间,如果连接空闲时间大于等于minEvictableIdleTimeMillis则关闭物理连接。
      #2) testWhileIdle的判断依据,详细看testWhileIdle属性的说明
      timeBetweenEvictionRunsMillis: 60000
      #连接保持空闲而不被驱逐的最小时间
      minEvictableIdleTimeMillis: 300000
      #用来检测连接是否有效的sql,要求是一个查询语句,常用select 'x'。
      #如果validationQuery为null,testOnBorrow、testOnReturn、testWhileIdle都不会起作用。
      validationQuery: SELECT 'X'
      #建议配置为true,不影响性能,并且保证安全性。
      #申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
      testWhileIdle: true
      #申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
      testOnBorrow: false
      #归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
      testOnReturn: false
      #是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
      poolPreparedStatements: false
      #要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100
      maxPoolPreparedStatementPerConnectionSize: -1

到此这篇关于SpringBoot集成Druid的文章就介绍到这了,更多相关SpringBoot集成Druid内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringBoot工程下Lombok的应用教程详解

    SpringBoot工程下Lombok的应用教程详解

    这篇文章主要给大家介绍了关于SpringBoot工程下Lombok应用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • Springboot结合@validated优化代码验证

    Springboot结合@validated优化代码验证

    这篇文章主要介绍了Springboot与@validated注解结合从而实现让你的代码验证更清爽,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • java版微信公众平台消息接口应用示例

    java版微信公众平台消息接口应用示例

    这篇文章主要介绍了java版微信公众平台消息接口应用,结合实例形式对比分析了PHP与java应用微信公众平台接口的相关调用与操作技巧,需要的朋友可以参考下
    2017-07-07
  • SpringBoot应用部署之WAR包部署方式

    SpringBoot应用部署之WAR包部署方式

    这篇文章主要介绍了SpringBoot应用部署之WAR包部署方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-03-03
  • Spring中@Configuration和@Component注解的区别及原理

    Spring中@Configuration和@Component注解的区别及原理

    这篇文章主要介绍了Spring中@Configuration和@Component注解的区别及原理,从功能上来讲,这些注解所负责的功能的确不相同,但是从本质上来讲,Spring内部都将其作为配置注解进行处理,需要的朋友可以参考下
    2023-11-11
  • 带你玩转Kafka之初步使用

    带你玩转Kafka之初步使用

    最近开发的项目中,kafka用的比较多,为了方便梳理,所以记录一些关于kafka的文章,这篇文章主要给大家介绍了关于Kafka初步使用的相关资料,需要的朋友可以参考下
    2021-11-11
  • 关于Java垃圾回收开销降低的几条建议

    关于Java垃圾回收开销降低的几条建议

    垃圾回收(Garbage Collection)是Java虚拟机(JVM)垃圾回收器提供的一种用于在空闲时间不定时回收无任何对象引用的对象占据的内存空间的一种机制,下面这篇文章主要介绍了关于Java垃圾回收开销降低的几条建议,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • java实现对map的字典序排序操作示例

    java实现对map的字典序排序操作示例

    这篇文章主要介绍了java实现对map的字典序排序操作,结合实例形式分析了java参照微信官网算法实现的字典序排序操作相关实现技巧,需要的朋友可以参考下
    2019-07-07
  • IntelliJ IDEA之配置JDK的4种方式(小结)

    IntelliJ IDEA之配置JDK的4种方式(小结)

    这篇文章主要介绍了IntelliJ IDEA之配置JDK的4种方式(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 获取Java加载器和类完整结构的方法分享

    获取Java加载器和类完整结构的方法分享

    这篇文章主要为大家详细介绍了获取Java加载器和类完整结构的方法,文中的示例代码讲解详细,对我们学习Java有一定的帮助,需要的可以参考一下
    2022-12-12

最新评论