zoukankan      html  css  js  c++  java
  • SpringBoot集成druid数据库连接池的简单使用

    简介

    Druid是阿里巴巴旗下Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。
    官网: https://github.com/alibaba/druid/wiki/常见问题
    SpringBoot集成官网:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starter

    依赖

        <!--sqlserver驱动-->
            <dependency>
                <groupId>com.microsoft.sqlserver</groupId>
                <artifactId>mssql-jdbc</artifactId>
                <version> 7.4.1.jre8</version>
                <scope>runtime</scope>
            </dependency>
            <!--Duid集成SpringBoot-->
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>druid-spring-boot-starter</artifactId>
                <version>1.1.18</version>
            </dependency>
            <!--spring集成jdbc-->
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-jdbc</artifactId>
            </dependency>
    

    yml配置

    server:
      port: 8082
      servlet:
        context-path: /druidDemo
    spring:
      datasource:
        url: jdbc:sqlserver://192.168.200.42YPT3
        username: sa
        password: 123qwe,.
        # 可以缺省 根据添加的依赖进行自动配置
        driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver
        druid:
          initial-size: 5 # 初始化时建立物理连接的个数
          max-active: 30 # 最大连接池数量
          min-idle: 5 # 最小连接池数量
          max-wait: 60000 # 获取连接时最大等待时间,单位毫秒
          time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
          min-evictable-idle-time-millis: 300000 # 连接保持空闲而不被驱逐的最小时间
          validation-query: SELECT 1 # 用来检测连接是否有效的sql,要求是一个查询语句
          # 建议配置为true,不影响性能,并且保证安全性。申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
          test-while-idle: true
          test-on-borrow: false # 申请连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
          test-on-return: false  # 归还连接时执行validationQuery检测连接是否有效,做了这个配置会降低性能。
          pool-prepared-statements: true # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
          max-pool-prepared-statement-per-connection-size: 50 # 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。
          filter:
            stat: # 配置监控统计拦截的filters,去掉后监控界面sql无法统计
              db-type: sqlserver #类型
              log-slow-sql: true #开启慢sql监控
              slow-sql-millis: 2000 #慢sql时间
              enabled: true
          connect-properties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500 # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
          use-global-data-source-stat: true # 合并多个DruidDataSource的监控数据
          stat-view-servlet:
            login-username: admin # druid连接池监控用户名
            login-password: 123 # druid连接池监控用户名密码
            enabled: true #是否启用StatViewServlet(监控页面)默认值为false(考虑到安全问题默认并未启动,如需启用建议设置密码或白名单以保障安全)
          web-stat-filter:
            exclusions: /druid/* # 排除一些静态资源,以提高效率 *.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*
        type: com.alibaba.druid.pool.DruidDataSource #连接池指定 springboot2.02版本默认使用HikariCP 此处要替换成Druid
    

    监控页面

    启动项目: 访问
    http://localhost:8082/druidDemo/druid/sql.html

    gitee项目地址

    https://gitee.com/zhuayng/foundation-study.git

    参考

    https://www.cnblogs.com/defineconst/p/10879824.html
    https://segmentfault.com/a/1190000019718506

    XFS
  • 相关阅读:
    struts2通过配置文件进行数据校验无效
    几个windows使用小技巧
    让程序员抓狂的排序算法教学视频
    关于js中使用close方法无法关闭firefox浏览器
    JavaScript基础
    最全的Java面试宝典
    cookie注入
    Google搜索技巧
    Java之多态
    Winform之GDI绘制验证码
  • 原文地址:https://www.cnblogs.com/xiaofengshan/p/15101215.html
Copyright © 2011-2022 走看看