Springboot整合Druid连接池

Druid连接池不是springboot官方默认的连接池,springboot官方默认的连接池是HikariCP,我们要整合Druid连接池,就需要导入Druid连接池的jar包以及相关的配置。

1.在pom.xml中引入druid数据源

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

2.在application.yml中引入druid的相关配置

spring:
  datasource:
    username: root
    password: root
    url: jdbc:mysql:///springboot_h?         useUnicode=true&characterEncoding=utf8&useSSL=true&serverTimezone=UTC
    driver-class-name: com.mysql.cj.jdbc.Driver
    initialization-mode: always
    # 使用druid数据源
    type: com.alibaba.druid.pool.DruidDataSource
    # 数据源其他配置
    initialSize: 5
    minIdle: 5
    maxActive: 20
    maxWait: 60000
    timeBetweenEvictionRunsMillis: 60000
    minEvictableIdleTimeMillis: 300000
    validationQuery: SELECT 1 FROM DUAL
    testWhileIdle: true
    testOnBorrow: false
    testOnReturn: false
    poolPreparedStatements: true
    # 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
    filters: stat,wall,log4j
    maxPoolPreparedStatementPerConnectionSize: 20
    useGlobalDataSourceStat: true
    connectionProperties:
    druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

3.编写整合druid的配置类DruidConfig

public class DruidConfig {
    @ConfigurationProperties(prefix = "spring.datasource")
    @Bean
    public DataSource druid(){
        return new DruidDataSource();
    }
}

4.测试的时候,突然发现控制台报错了。经过查找发现是yml文件里的

因为我们springBoot2.0以后使用的日志框架已经不再使用log4j了。此时应该引入相应的适配器。 我们可以在pom.xml文件上加入

<!--引入适配器-->
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-log4j12</artifactId>
</dependency>


版权声明:本文为qq_29551611原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。