记录下  

    首先目前大家经常做多数据原配置,但是需要将监控配置抽离出来,不能每个数据源都写一遍太麻烦了。


监控相关配置

package com.alibaba.druid.spring.boot.autoconfigure.properties;
@ConfigurationProperties("spring.datasource.druid")
public class DruidStatProperties {
    private String[] aopPatterns;
    private StatViewServlet statViewServlet = new StatViewServlet();
    private WebStatFilter webStatFilter = new WebStatFilter();

这里就很明显了,三个大配置项,具体的就不多说了,网上很多

aopPatterns      spring监控相关
statViewServlet  权限相关配置
webStatFilter    监控页面相关配置

  datasource:
    druid:
      # Spring监控AOP切入点,如x.y.z.service.*,配置多个英文逗号分隔
      aop-patterns: com.test.service.*
      # WebStatFilter配置
      web-stat-filter:
        enabled: true
        # 添加过滤规则
        url-pattern: /*
        # 忽略过滤的格式
        exclusions: '*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*'
    # StatViewServlet配置
      stat-view-servlet:
        enabled: true
        # 访问路径为/druid时,跳转到StatViewServlet
        url-pattern: /druid/*
        #  是否能够重置数据
        reset-enable: false
        # 需要账号密码才能访问控制台
        login-username: druid
        login-password: druid123
       # IP白名单
       # allow: 127.0.0.1
                      # IP黑名单(共同存在时,deny优先于allow)
      # deny: 192.168.1.218


线面就是数据库相关的配置了

这个就更没啥可说的了。

注意的就是,自定义多数据源时,最后用现成的类,或者模拟原始类去加载对应的配置。

package com.alibaba.druid.pool;
*****
public abstract class DruidAbstractDataSource extends Wra***{
  protected volatile boolean                         defaultAutoCommit                         = true;
    protected volatile Boolean                         defaultReadOnly;
    protected volatile Integer                         defaultTransactionIsolation;
    protected volatile String                          defaultCatalog                            = null;
    protected String                                   name;
    protected volatile String                          username;
    protected volatile String                          password;
    protected volatile String                          jdbcUrl;
    protected volatile String                          driverClass;
    protected volatile ClassLoader                     driverClassLoader;
    protected volatile Properties                      connectProperties                         = new Properties();
    protected volatile PasswordCallback                passwordCallback;
    protected volatile NameCallback                    userCallback;
    protected volatile int                             initialSize                               = DEFAULT_INITIAL_SIZE;
    protected volatile int                             maxActive                                 = DEFAULT_MAX_ACTIVE_SIZE;
    protected volatile int                             minIdle                                   = DEFAULT_MIN_IDLE;
    protected volatile int                             maxIdle                                   = DEFAULT_MAX_IDLE;
    protected volatile long                            maxWait                                   = DEFAULT_MAX_WAIT;
    protected int                                      notFullTimeoutRetryCount                  = 0;
    protected volatile String                          validationQuery                           = DEFAULT_VALIDATION_QUERY;
    protected volatile int                             validationQueryTimeout                    = -1;
    protected volatile boolean                         testOnBorrow                              = DEFAULT_TEST_ON_BORROW;
    protected volatile boolean                         testOnReturn                              = DEFAULT_TEST_ON_RETURN;
********
}







乐享:知识积累,快乐无限。