content: package com.moti.config;
  
  import com.alibaba.druid.pool.DruidDataSource;
  import com.alibaba.druid.support.http.StatViewServlet;
  import com.alibaba.druid.support.http.WebStatFilter;
  import org.springframework.boot.context.properties.ConfigurationProperties;
  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 javax.sql.DataSource;
  import java.util.Arrays;
  import java.util.HashMap;
  import java.util.Map;
  
  @Configuration
  public class DruidConfig {
  
      /**
       * @Description  绑定配置文件中的相关属性
       * @Author xw
       * @Date 17:34 2020/2/25
       * @Param  * @param null
       * @return
       **/
      @ConfigurationProperties(prefix = "spring.datasource")
      @Bean
      public DataSource druid(){
          return new DruidDataSource();
      }
  
      /**
       * @Description  配置Druid的监控,配置一个管理后台的Servlet
       * @Author xw
       * @Date 17:35 2020/2/25
       * @Param []
       * @return org.springframework.boot.web.servlet.ServletRegistrationBean
       **/
      @Bean
      public ServletRegistrationBean statViewServlet(){
          ServletRegistrationBean bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
          Map<String,String> initParams = new HashMap<>();
          initParams.put("loginUsername","admin");
          initParams.put("loginPassword","123456");
          //默认就是允许所有访问
          initParams.put("allow","");
          bean.setInitParameters(initParams);
          return bean;
      }
  
      /**
       * @Description  配置一个web监控的filter
       * @Author xw
       * @Date 17:35 2020/2/25
       * @Param []
       * @return org.springframework.boot.web.servlet.FilterRegistrationBean
       **/
      @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;
      }
  }