首先確定是引入druid的依賴:css
<dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.10</version> </dependency>
而後將druid配置到項目中:html
在application.yml中加入
spring: datasource: 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 maxPoolPreparedStatementPerConnectionSize: 20 useGlobalDataSourceStat: true connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
這裏配置好以後,數據源是從默認的tomcat.pool切換到了druid,但是druid的屬性好比initialSize、minIdle還未生效,由於在DataSourceProperties.class下沒有對應的匹配項,因此還須要咱們手動配置:java
新建DruidConfig.java
@Configuration public class DruidConfig { // 將全部前綴爲spring.datasource下的配置項都加載到DataSource中 @ConfigurationProperties(prefix = "spring.datasource") @Bean public DataSource druidDataSource() { return new DruidDataSource(); } }
至此,Druid的全部配置都已完成,打斷點能夠看到配置已經生效:
spring
最後,須要配置druid的監控頁面sql
在上面的DruidConfig中加入代碼:
@Bean public ServletRegistrationBean druidStatViewServlet() { ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(new StatViewServlet(),"/druid/*"); Map<String, String> initParams = new HashMap<>(); // 可配的屬性都在 StatViewServlet 和其父類下 initParams.put("loginUsername", "admin-druid"); initParams.put("loginPassword", "111111"); servletRegistrationBean.setInitParameters(initParams); return servletRegistrationBean; } @Bean public FilterRegistrationBean druidWebStatFilter() { FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean(new WebStatFilter()); Map<String, String> initParams = new HashMap<>(); initParams.put("exclusions", "*.js,*.css,/druid/*"); filterRegistrationBean.setInitParameters(initParams); filterRegistrationBean.setUrlPatterns(Arrays.asList("/*")); return filterRegistrationBean; }
打開瀏覽器測試輸入:http://localhost:8080/druid/login.html瀏覽器
能夠看到
tomcat
輸入咱們剛纔在servlet中配置的帳號密碼就能夠登陸了app