不积跬步,无以至千里;不积小流,无以成江海。大家好,我是闲鹤,微信:xxh_1459,十多年开发、架构经验,先后在华为、迅雷服役过,也在高校从事教学3年;目前已创业了7年多,主要从事物联网/车联网相关领域和业务。喜欢交友、骑行、写毛笔字、弹吉他、折腾硬件和写代码。
导读
这是一系列关于 SpringBoot Web框架实战 的教程,从项目的创建,到一个完整的 web 框架(包括异常处理、拦截器、context 上下文等);从0开始,到一个可以直接运用在生产环境中的web框架,所有源码均开源。
正文
我们在 [005 Spring Boot 使用 JdbcTemplate 操作数据库](https://mp.weixin.qq.com/s?__biz=MjM5MjA4NTEwNQ==&mid=2649669750&idx=1&sn=1316a8ca04189368aa7f1486ded16481&chksm=beb1c56889c64c7e731a7bec8902bac882db4fc368a44f628e30106b7fcdcca6502c3cca2fa4&token=766189631&lang=zh_CN#rd 使用的是 Spring Boot 默认的 HiKariCP 作为数据源操作数据库,本篇我们来正常 Druid 作为数据源。
Druid 简介
Java程序很大一部分要操作数据库,为了提高性能操作数据库的时候,又不得不使用数据库连接池。
Druid 是阿里巴巴开源平台上一个数据库连接池实现,结合了 C3P0、DBCP 等 DB 池的优点,同时加入了日志监控。
Druid 可以很好的监控 DB 池连接和 SQL 的执行情况,天生就是针对监控而生的 DB 连接池。
Druid已经在阿里巴巴部署了超过600个应用,经过一年多生产环境大规模部署的严苛考验。
Spring Boot 2.0 以上默认使用 Hikari 数据源,可以说 Hikari 与 Driud 都是当前 Java Web 上最优秀的数据源,我们来重点介绍 Spring Boot 如何集成 Druid 数据源,如何实现数据库监控。
一句话:Druid 是目前推荐使用的数据源。
引入依赖
我们在上篇 005 Spring Boot 使用 JdbcTemplate 操作数据库 源码的基础上进行修改:
pom增加:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.2.12</version>
</dependency>
修改配置文件
在原来的基础上增加:
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
删除原来的 HiKariCP 配置:
spring.datasource.hikari.minimum-idle=5
完整的配置文件:
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/app_test?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
新建配置文件
/**
* Created by JDZ.
* Company: Jindaozi Information Tec. Nanchang Com.
* Copyright: jindaozi
* Hom