Spring boot druid 的配置使用


依賴加入

    <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.18</version>
        </dependency>

  

YML

 

 

spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/student?useUnicode=true&characterEncoding=utf-8
    username: root
    password: 12345678
    # druid 配置
    dbType: mysql   # 指定數據庫類型 mysql
    initialSize: 5  # 啟動初始化連接數量
    minIdle: 5      # 最小空閑連接
    maxActive: 20   # 最大連接數量(包含使用中的和空閑的)
    maxWait: 60000  # 最大連接等待時間 ,超出時間報錯
    timeBetweenEvictionRunsMillis: 60000  # 設置執行一次連接回收器的時間
    minEvictableIdleTimeMillis: 300000   # 設置時間: 該時間內沒有任何操作的空閑連接會被回收
    validationQuery: select 'x'         # 驗證連接有效性的sql
    testWhileIdle: true             # 空閑時校驗
    testOnBorrow: false  # 使用中是否校驗有效性
    testOnReturn: false  # 歸還連接池時是否校驗
    poolPreparedStatements: false  # mysql 不推薦打開預處理連接池
    filters: stat,wall,logback  #設置過濾器 stat用於接收狀態,wall防止sql注入,logback說明使用logback進行日志輸出
    userGlobalataSourceStat: true  # 統計所有數據源狀態
    connectionProperties: druid.stat.mergSql=true;druid.stat.slowSqlMillis=500  # sql合並統計 設置慢sql時間為500,超過500 會有記錄提示

 

 

 入口程序配置自定義Bean

 

   // 初始化druidDataSource對象
    @Bean
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource druidDataSource(){

        return  new DruidDataSource();
    }


    // 注冊后台監控界面
    @Bean
    public ServletRegistrationBean servletRegistrationBean(){
        // 綁定后台監控界面的路徑  為localhost/druid
        ServletRegistrationBean bean=new ServletRegistrationBean(new StatViewServlet(),"/druid/*");
        Map<String,String>map=new HashMap<>();
        // 設置后台界面的用戶名
        map.put("loginUsername","guoxw");
        //設置后台界面密碼
        map.put("loginPassword","123456");
        // 設置那些ip允許訪問," " 為所有
        map.put("allow","");
        // 不允許該ip訪問
        map.put("deny","33.32.43.123");
        bean.setInitParameters(map);
        return bean;

    }

    // 監聽獲取應用的數據,filter用於收集數據,servlet用於數據展示

    @Bean
    public FilterRegistrationBean filterRegistrationBean(){
        FilterRegistrationBean bean=new FilterRegistrationBean();
        // 設置過濾器
        bean.setFilter(new WebStatFilter());
        // 對所有請求進行過濾捕捉監聽
        bean.addUrlPatterns("/*");
        Map<String,String>map=new HashMap<>();
        // 排除 . png  .js 的監聽  用於排除一些靜態資源訪問
        map.put("exclusions","*.png,*.js");
        bean.setInitParameters(map);
        return bean;

    }

  

進入配置的地址 http://localhost:8080/druid

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM