【本文版权归微信公众号"代码艺术"(ID:onblog)全部,如果转载请务必保留本段原创声明,违者必究。】css
Druid是Java语言中最好的数据库链接池。Druid可以提供强大的监控和扩展功能。java
Druid是一个开源项目,源码托管在github上,源代码仓库地址是 https://github.com/alibaba/druid。同时每次Druid发布正式版本和快照的时候,都会把源码打包,你能够从上面的下载地址中找到相关版本的源码mysql
首先在你的SpringBoot项目导入依赖git
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.10</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> </dependency>
spring: datasource: driver-class-name: com.mysql.jdbc.Driver url: jdbc:mysql://localhost:3306/user?useUnicode=true&characterEncoding=utf-8&useSSL=false username: root password: 123456 type: com.alibaba.druid.pool.DruidDataSource # 数据源其余配置 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,log4j >【本文版权归微信公众号"代码艺术"(ID:onblog)全部,如果转载请务必保留本段原创声明,违者必究。 useGlobalDataSourceStat: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
@Configuration public class DruidConfig { @ConfigurationProperties(prefix = "spring.datasource") @Bean public DataSource druid() { return new DruidDataSource(); } //配置Druid的监控 // 一、配置一个管理后台的Servlet @Bean public ServletRegistrationBean statViewServlet() { //配置参数参考ResourceServlet类 ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*"); Map<String, String> initParams = new HashMap<>(); initParams.put("loginUsername", "admin"); initParams.put("loginPassword", "123456"); initParams.put("allow", "");//默认就是容许全部访问 initParams.put("deny", "192.168.15.21");//拒绝谁 bean.setInitParameters(initParams); return bean; } //二、配置一个web监控的filter @Bean public FilterRegistrationBean webStatFilter() { FilterRegistrationBean bean = new FilterRegistrationBean(); bean.setFilter(new WebStatFilter()); Map<String, String> initParams = new HashMap<>(); initParams.put("exclusions", "*.js,*.css,/druid/*"); bean.setInitParameters(initParams); bean.setUrlPatterns(Arrays.asList("/*")); return bean; } }
访问http://localhost:8080/druid体验强大的Druid!github
官方Spring boot集成文档:https://github.com/alibaba/druid/tree/master/druid-spring-boot-starterweb
【本文版权归微信公众号"代码艺术"(ID:onblog)全部,如果转载请务必保留本段原创声明,违者必究。】spring