- 環(huán)境: MacOS + IntelliJ IDEA 2019.3.1 (Ultimate Edition)
基于Spring實(shí)戰(zhàn) - 整合Spring MVC,整合Druid
1、在pom.xml中新增com.alibaba:druid 和 mysql:mysql-connector-java 依賴
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>${druid.version}</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector-java.version}</version>
</dependency>
2米死、在resources 目錄下創(chuàng)建cats.properties
# Mysql 7
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.connectionURL=jdbc:mysql://${localhost}/${db_name}?useUnicode=true&characterEncoding=utf-8&useSSL=false
jdbc.username=${db_username}
jdbc.password=${db_password}
# JDBC Pool
jdbc.pool.init=1
jdbc.pool.minIdle=3
jdbc.pool.maxActive=20
3、集成Druid
在resources 目錄下創(chuàng)建spring-context-druid.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 加載配置屬性文件 -->
<context:property-placeholder ignore-unresolvable="true" location="classpath:cats.properties"/>
<!-- 數(shù)據(jù)源配置, 使用 Druid 數(shù)據(jù)庫連接池 -->
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" init-method="init" destroy-method="close">
<!-- 數(shù)據(jù)源驅(qū)動(dòng)類可不寫挤庇,Druid默認(rèn)會(huì)自動(dòng)根據(jù)URL識(shí)別DriverClass -->
<property name="driverClassName" value="${jdbc.driverClass}"/>
<!-- 基本屬性 url掉分、user逐虚、password -->
<property name="url" value="${jdbc.connectionURL}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
<!-- 配置初始化大小、最小锯厢、最大 -->
<property name="initialSize" value="${jdbc.pool.init}"/>
<property name="minIdle" value="${jdbc.pool.minIdle}"/>
<property name="maxActive" value="${jdbc.pool.maxActive}"/>
<!-- 配置獲取連接等待超時(shí)的時(shí)間 -->
<property name="maxWait" value="60000"/>
<!-- 配置間隔多久才進(jìn)行一次檢測皮官,檢測需要關(guān)閉的空閑連接,單位是毫秒 -->
<property name="timeBetweenEvictionRunsMillis" value="60000"/>
<!-- 配置一個(gè)連接在池中最小生存的時(shí)間实辑,單位是毫秒 -->
<property name="minEvictableIdleTimeMillis" value="300000"/>
<property name="validationQuery" value="${jdbc.testSql}"/>
<property name="testWhileIdle" value="true"/>
<property name="testOnBorrow" value="false"/>
<property name="testOnReturn" value="false"/>
<!-- 配置監(jiān)控統(tǒng)計(jì)攔截的filters -->
<property name="filters" value="stat"/>
</bean>
</beans>
4捺氢、在web.xml 配置Druid 監(jiān)控中心
<servlet>
<servlet-name>DruidStatView</servlet-name>
<servlet-class>com.alibaba.druid.support.http.StatViewServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>DruidStatView</servlet-name>
<url-pattern>/druid/*</url-pattern>
</servlet-mapping>
5、打開瀏覽器剪撬,輸入http://localhost:8080/druid/index.html即可查看監(jiān)控信息
Druid 監(jiān)控.png