springboot -> druid connection pool configuration

springboot -> druid connection pool configuration

1. Pom introduces dependencies

Note: Google’s guava must be

<!--mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.38</version>
        </dependency>
<!-- druid连接池 -->
		<dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.10</version>
        </dependency>
<!--google-->
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>18.0</version>
        </dependency>

Rely on query link

2. Configuration file application.properties

#配置dirudi数据库连接池
spring.druid.driverClassName=com.mysql.jdbc.Driver
spring.druid.url=jdbc:mysql://localhost:3306/demo?useSSL=false&characterEncoding=UTF-8&serverTimezone=UTC
spring.druid.username=root
spring.druid.password=root
#最大连接数
spring.druid.maxActive=30
#最小连接数
spring.druid.minIdle=5
#获取最大的链接等待时间
spring.druid.maxWait=10000
#解决mysql8小时的问题,验证时候正常
spring.druid.validationgQuery=SELECT 'x'
#空闲连接检查间隔
spring.druid.timeBetweenEvictionRunMillis=60000
#空闲连接最小空闲时间
spring.druid.minEvictableIdleTimeMillis=300000

3. Configuration class config

package com.jinfang.demo.config;
import java.sql.SQLException;
import javax.sql.DataSource;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.alibaba.druid.filter.Filter;
import com.alibaba.druid.filter.stat.StatFilter;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.google.common.collect.Lists;
@Configuration
public class DruidConfig {
	@ConfigurationProperties(prefix="spring.druid")
	@Bean
	public DataSource dataSource(Filter statFilter) throws SQLException{
		DruidDataSource dataSource = new DruidDataSource();
		dataSource.setProxyFilters(Lists.newArrayList(statFilter()));
		return dataSource;
	}
	@Bean
	public Filter statFilter(){
		StatFilter filter = new StatFilter();
		filter.setSlowSqlMillis(5000);
		filter.setLogSlowSql(true);
		filter.setMergeSql(true);
		return filter;
	}
	@Bean
	public ServletRegistrationBean servletRegistrationBean(){
		return new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
	}
}

Guess you like

Origin blog.csdn.net/qq_42476834/article/details/107504611