使用Durid在Spring boot中配置和监控数据源
1、首先我们需要对Durid的具体功能有个大概了解,它包含的主要功能:
1)使用StaFilter插件进行监控数据库访问性能
2)替换DBCP和C3P0,提供一个搞笑、可扩展的数据库连接池
3)支持数据库密码的加密
4)SQL执行日志
2、在Spring boot Maven工程中,增加durid的依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.6</version>
</dependency>

3、增加Durid包依赖后,需要刷新Maven工程的,让Maven自动下载相关的Durid包

4、创建一个Durid的Servlet类Durid*Stat*PageServlet作为访问Durid的监控页面
package fantasy.druid;
import javax.servlet.annotation.WebInitParam;
import javax.servlet.annotation.WebServlet;
import com.alibaba.druid.support.http.StatViewServlet;
@WebServlet(urlPatterns="/druid/*",
initParams= {
@WebInitParam(name="allow",value="127.0.0.1"),
@WebInitParam(name="loginUsername",value="fantasy"),
@WebInitParam(name="loginPassword",value="fantasy")
}
)
public** cla*-* s*-* s**Durid**Stat*-*PageServlet*-* extends *-*StatViewServlet {
private static final long serialVersionUID = 2100099022647571637L;
}

5、在Spring的配置文件中配置Durid数据库连接池
spring.datasource.type=com.alibaba.druid.pool.DruidDtataSource
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/videoDB
spring.datasource.username=root
spring.datasource.password=password
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.max-idle=10
spring.datasource.max-wait=10000
spring.datasource.min-idle=5
spring.datasource.initial-size=5

6、初步测试Durid的监控页面显示是否正常
1)运行Spring boot应用
2)查看启动日志,确认durid的Servlet启动成功
2018-01-17 10:25:53.602 INFO 6792 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'fantasy.druid.Durid*-*Stat*-*Page*-*Servlet' to*-* [/druid/*]
3)在浏览器上输入 http://localhost:8080/druid/login.html 进行验证
4)在登录页面中输入用户名和密码(Durid*-*Stat*-*Page*-*Servlet中设置的用户名和密码)进行登录,如果没有错误就可以看到完整的监控页面主页了
5)该页面上我们也只是能看到首页和数据源页签的信息,其他页签的监控信息都是空的





7、进一步加强Druid的监控功能:打开统计监控功能,配置StatFilter
增加如下配置:
spring.datasource.filters=stat,slf4j
1)在视频上传页面我们上传2次操作,这时候会插入两天数据到MySQL数据库中
2)在Druid监控页面中的数据源页面可以看到提交数为2,我们我们执行了2次数据库提交操作

