首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Spring Boot 使用 Druid 连接池

Spring Boot 使用 Druid 连接池

作者头像
happyJared
发布2019-04-23 17:31:36
1.1K0
发布2019-04-23 17:31:36
举报
文章被收录于专栏:happyJaredhappyJared

简介

Spring Boot 1.x 版本中,默认使用的数据库连接池为:Tomcat JDBC;到了 Spring Boot 2.x,也切换到了更高性能的 HikariCP 连接池。

不过上面这两个都不是今天的重点,下面介绍的是国内较为流行的 Druid ,一款为监控而生的数据库连接池,由阿里巴巴数据库事业部出品。Druid 连接池内置了强大的监控功能,该特性不影响性能。功能强大,能防止 SQL 注入,内置 Logging 能诊断 hack 应用行为。

数据库连接池对比

早期使用 Druid 时候还得配合着 Spring 来使用,一堆的 XML 配置文件,那可真叫是非常的不便。好在,Spring Boot 的全面推广,使得 Web 开发显得越来越高效简单,各种自带的、第三方的 Starter 也随之而生,约定大于配置,这不仅仅是简化了开发人员的上手复杂度,更是让整个体系走向越来越自动化、智能化。

使用

Druid 官方同样提供了相应的 Spring Boot Starter ,旨在帮助开发者在 Spring Boot 项目中轻松集成 Druid 数据库连接池和监控。

  1. 加入依赖
    <dependencies>
        <!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
        <!-- 引入 Druid , 排除 HikariCP -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.16</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
            <exclusions>
                <exclusion>
                    <artifactId>HikariCP</artifactId>
                    <groupId>com.zaxxer</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
    </dependencies>
  1. 添加配置
spring:
  jpa:
    open-in-view: false
  datasource:
    druid:
      ##### JDBC 配置(内嵌数据库可省略)
      #      # 或spring.datasource.url=
      #      url:
      #      # 或spring.datasource.username=
      #      username:
      #      # 或spring.datasource.password=
      #      password:
      #      # 或spring.datasource.driver-class-name=
      #      driver-class-name:

      ##### 连接池配置
      min-idle: 5
      max-active: 5
      max-wait: 5000
      initial-size: 5
      validation-query: "select 'x'"
      test-while-idle: true
      filters: conn,config,stat,wall,slf4j

      ##### 监控配置
      web-stat-filter:
        enabled: true
      stat-view-servlet:
        enabled: true
        # http://localhost:8080/druid/login.html
        login-username: admin
        login-password: admin
  1. 启动 Application

访问 http://localhost:8080/druid/login.html ,输入登录用户名和密码 admin,就可以查看 Druid 提供的所有监控功能。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019.04.16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 使用
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档