SpringBoot data source configuration (4)

1. Introduce dependency packages

<!-- jdbc -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- mysql driver package-->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- druid -->
<dependency>
       <groupId>com.alibaba</groupId>
       <artifactId>druid</artifactId>
       <version>1.1.9</version>
</dependency>

 2. Configuration file application.properties

#Database link
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://192.168.0.202:3306/tzxx_34?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456

#druidConnectionPool
spring.datasource.type: com.alibaba.druid.pool.DruidDataSource
#Maximum active count
spring.datasource.maxActive: 20
#initialize the number
spring.datasource.initialSize: 1
#Maximum connection wait timeout
spring.datasource.maxWait: 60000
#Open PSCache and specify the size of each connection PSCache
spring.datasource.poolPreparedStatements: true
spring.datasource.maxPoolPreparedStatementPerConnectionSize: 20
#Open the mergeSql function through the connectionProperties property; slow SQL records
#connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
spring.datasource.minIdle: 1
spring.datasource.timeBetweenEvictionRunsMillis: 60000
spring.datasource.minEvictableIdleTimeMillis: 300000
spring.datasource.validationQuery: select 1 from dual
spring.datasource.testWhileIdle: true
spring.datasource.testOnBorrow: false
spring.datasource.testOnReturn: false
#Configure the filters for monitoring statistics interception, after removing the monitoring interface sql will not be able to count, 'wall' is used for firewalls
filters: stat, wall, log4j

 3. New configuration class: DruidConfiguration.java

package com.zzstxx;

import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;

/**
 * Druid related configuration
 * @author Administrator
 *
 */
@Configuration
public class DruidConfiguration {

	@Bean
	public ServletRegistrationBean statViewServlet() {
		// Create servlet registration entity
		ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(
				new StatViewServlet(), "/druid/*");
		// set ip whitelist
		servletRegistrationBean.addInitParameter("allow", "127.0.0.1");
		// Set ip blacklist, if allow and deny coexist, deny takes precedence over allow
		servletRegistrationBean.addInitParameter("deny", "192.168.0.19");
		// Set the console management user
		servletRegistrationBean.addInitParameter("loginUsername", "druid");
		servletRegistrationBean.addInitParameter("loginPassword", "123456");
		// Is it possible to reset the data
		servletRegistrationBean.addInitParameter("resetEnable", "false");
		return servletRegistrationBean;
	}

	@Bean
	public FilterRegistrationBean statFilter() {
		// create filter
		FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(
				new WebStatFilter());
		// set the filter filter path
		filterRegistrationBean.addUrlPatterns("/*");
		// ignore filtered form
		filterRegistrationBean.addInitParameter("exclusions",
				"*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*");
		return filterRegistrationBean;
	}
}

 4. Start the service: visit http://127.0.0.1:8888/springboot-dev/druid/index.html   

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325984113&siteId=291194637