Spring Boot

SpringBoot2.0数据访问(二)整合Druid数据库连接

2018-06-20  本文已影响0人  码农StayUp

本文作者:Spring_ZYL
意见反馈:spring_zyl@163.com
文章来源:https://www.jianshu.com/u/1b5928185b73
版权声明:本文版权归作者所有,转载请注明出处

一、引入Druid依赖

在pom文件中引入Druid依赖

        <!--引入Druid数据源-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.9</version>
        </dependency>

二、修改配置文件

type指定DruidDataSource数据源,并在下面配置其他参数

# 配置数据源
spring:
  datasource:
    username: root
    password: root
    url: jdbc:mysql://127.0.0.1:3306/springboot_db
    driver-class-name: com.mysql.jdbc.Driver
    # 数据源类型:Druid
    type: com.alibaba.druid.pool.DruidDataSource

    # 配置Druid的其他参数,以下配置必须增加一个配置文件才能有效
    # 初始化大小,最小,最大
    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
    # 打开PSCache,并且指定每个连接上PSCache的大小
    maxPoolPreparedStatementPerConnectionSize: 20
    # 通过connectProperties属性来打开mergeSql功能;慢SQL记录
    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
    # 合并多个DruidDataSource的监控数据
    useGlobalDataSourceStat: true

三、创建Druid的配置文件

此配置文件的prefix指定为spring.datasource

import com.alibaba.druid.pool.DruidDataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import javax.sql.DataSource;

/**
 * 表示一个配置文件
 */
@Configuration
public class DruidConfig {

    /**
     * 加入到Spring容器中,并扫描spring.datasource前缀的配置
     * @return
     */
    @Bean
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource druid(){
        return new DruidDataSource();
    }
}
上一篇下一篇

猜你喜欢

热点阅读