zoukankan      html  css  js  c++  java
  • spring boot配置druid数据连接池

    Druid是阿里巴巴开源项目中一个数据库连接池。

    Druid是一个jdbc组合,包含三个部分,

    1.DruidDriver代理Driver,能够提供基于Filter-Chain模式得插件体系
    2.DruidDataSource高效可管理得数据连接池。
    3.SQLParser,支持所有jdbc兼容得数据库,包括ORacle,mysql,sql server.
    Druid在监控,可扩展,稳定性和性能方面具有明显得优势,通过提供得监控功能可以观察数据库连接池和sql查询工作情况,
    使用druid连接池可以提高数据库得访问性能。

    应该怎么使用呢。比如要使用mysql数据库,那么就要首先在pom.xml中增加依赖。

                    <dependency>
    	    		<groupId>mysql</groupId>
    			<artifactId>mysql-connector-java</artifactId>
    		</dependency>            

    再增加druid的引入druid连接池 

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

     再引入druid的starter,用来配置属性

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

     配置属性,application,yml

    spring:
        datasource:
            url: jdbc:mysql://127.0.0.1:3306/springboot05?characterEncoding=utf-8&useUnicode=true&useSSL=false
            driver-class-name: com.mysql.cj.jdbc.Driver  # mysql8.0以前使用com.mysql.jdbc.Driver
            username: root
            password: root
            platform: mysql
            #通过这句配置将druid连接池引入到我们的配置中,spring会尽可能判断类型是什么,然后根据情况去匹配驱动类。
            type: com.alibaba.druid.pool.DruidDataSource
            druid:
                initial-size: 5  # 初始化大小
                min-idle: 5  # 最小
                max-active: 100  # 最大
                max-wait: 60000  # 配置获取连接等待超时的时间
                time-between-eviction-runs-millis: 60000  # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
                min-evictable-idle-time-millis: 300000  # 指定一个空闲连接最少空闲多久后可被清除,单位是毫秒
                validationQuery: select 'x'
                test-while-idle: true  # 当连接空闲时,是否执行连接测试
                test-on-borrow: false  # 当从连接池借用连接时,是否测试该连接
                test-on-return: false  # 在连接归还到连接池时是否测试该连接
                filters: config,wall,stat  # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
                poolPreparedStatements: true # 打开PSCache,并且指定每个连接上PSCache的大小
                maxPoolPreparedStatementPerConnectionSize: 20
                maxOpenPreparedStatements: 20
                # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
                connectionProperties: druid.stat.slowSqlMillis=200;druid.stat.logSlowSql=true;config.decrypt=false
                 # 合并多个DruidDataSource的监控数据
                #use-global-data-source-stat: true
                #WebStatFilter配置,说明请参考Druid Wiki,配置_配置WebStatFilter
                web-stat-filter:
                    enabled: true #是否启用StatFilter默认值true
                    url-pattern: /*
                    exclusions: /druid/*,*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico
                    session-stat-enable: true
                    session-stat-max-count: 10
                #StatViewServlet配置,说明请参考Druid Wiki,配置_StatViewServlet配置
                stat-view-servlet:
                    enabled: true #是否启用StatViewServlet默认值true
                    url-pattern: /druid/*
                    reset-enable: true
                    login-username: admin
                    login-password: admin
    

      运行springboot,登陆locahost:8080/druid/

      输入用户名,密码

  • 相关阅读:
    c# 日期函数
    js中的replace问题和textarea回车符问题
    项目代码风格要求
    重温Observer模式--热水器·改
    xcode 编译glfw , 导出.h
    开发者所需要知道的 iOS 11 SDK 新特性
    RAC基础笔记(2)
    RAC基础笔记
    NSString copy,strong 修饰问题
    git 常用操作
  • 原文地址:https://www.cnblogs.com/hamish26/p/12377295.html
Copyright © 2011-2022 走看看