spring boot 之 集成 druid数据库连接池

spring boot版本:2.3.12.RELEASE
MySQL版本:8.0

Druid简介

Druid是阿里开源的一个数据库连接池和SQL查询优化工具,用于提高应用程序对数据库的性能和可扩展性。主要提供的功能:数据库连接池、数据库连接池监控、SQL查询优化、数据源管理、防御SQL注入、统计和监控。

引入pom依赖

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

<!-- mysql-connector-j -->
<dependency>
    <groupId>com.mysql</groupId>
    <artifactId>mysql-connector-j</artifactId>
    <version>8.0.33</version>
</dependency>

application.yml配置

server:
  port: 8989
  servlet:
    context-path: /druidDemo

spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      driver-class-name: com.mysql.cj.jdbc.Driver
      url: jdbc:mysql://127.0.0.1:3306/spring_boot_test?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=false
      username: root
      password: 123456
      # 如果initialSize数量较多时,打开会加快应用启动时间
      async-init: true
      # 连接池初始化时创建的连接数
      initial-size: 5
      # 连接池中最大连接数
      max-active: 50
      # 连接池中最小空闲连接数
      min-idle: 5
      # 连接池中最大空闲连接数
      max-idle: 20
      # 配置获取连接等待超时的时间 毫秒
      max-wait: 6000
      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
      time-between-eviction-runs-millis: 60000
      # 增强timeBetweenEvictionRunsMillis的周期性连接检查,minIdle内的空闲连接,每次检查强制验证连接有效性
      keep-alive: true
      # 配置一个连接在池中最小生存的时间,单位是毫秒
      min-evictable-idle-time-millis: 300000
      max-evictable-idle-time-millis: 172800000
      # 用于检测连接是否有效的SQL语句
      validation-query: select 1
      validation-query-timeout: 1
      # 是否开启空闲连接的检测
      test-while-idle: true
      # 是否开启连接的检测功能,在获取连接时检测连接是否有效
      test-on-borrow: false
      # 是否开启连接的检测功能,在归还连接时检测连接是否有效
      test-on-return: false
      # 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。
      pool-prepared-statements: false
      # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
      # 配置监拉统计挡成的filters. stat: 监控统计、Log4j:日志记录、waLL: 防御sqL注入
      filters: stat,wall,log4j2
      # 配置后台监控
      stat-view-servlet:
        # http://localhost:8989/mp/druid/index.html
        # 启用StatViewServlet
        enabled: true
        # 访问内置监控页面的路径,内置监控页面的首页是/druid/index.html
        url-pattern: /druid/*
        # 禁用页面重置按钮
        reset-enable: true
        # 配置监控页面访问密码
        login-username: root
        login-password: 123456
        # IP 黑名单,deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝
        deny:
        # IP 白名单,没有配置或者为空则允许所有访问
        allow: 127.0.0.1
      # 配置过滤器,过滤掉静态文件
      web-stat-filter:
        enabled: true
        url-pattern: /*
        exclusions: /druid/*,*.js,*.css,*.gif,*.jpg,*.bmp,*.png,*.ico

mybatis-plus:
  # 实体类Mapper.xml文件所在包
  mapper-locations: classpath:mapper/*Mapper.xml
  # 指定 MyBatis 别名包扫描路径,用于给包中的类注册别名。注册后,在 Mapper 对应的 XML 文件中可以直接使用类名,无需使用全限定类名。
  type-aliases-package: com.example.pojo
  configuration:
    # 开启驼峰映射,A_COLUMN -> aColumn
    map-underscore-to-camel-case: true
    # 是否允许单条sql 返回多个数据集
    multiple-result-sets-enabled: true
    # mybatis-plus的日志输出到控制台
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

访问监控页面

端口是你自己定义的端口,druidDemo来自于server.servlet.context-path配置的值,按需修改即可。
浏览器输入:http://127.0.0.1:8989/druidDemo/druid/login.html ,输入你自己配置的账户密码即可访问。

  • 5
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值