最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Springboot項目引入druid安裝部署使用教程

 更新時間:2022年01月07日 08:30:47   作者:遠離顛倒夢想  
這篇文章主要介紹了Springboot項目引入druid安裝部署使用,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

一、maven引入依賴,數(shù)據(jù)庫驅(qū)動根據(jù)項目需求自行引入

<!-- https://mvnrepository.com/artifact/com.alibaba/druid-spring-boot-starter -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.2.6</version>
        </dependency>

二、配置datasource

spring:
  datasource:
      url: jdbc:mysql://192.168.199.100:33306/auto?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
      username: root
      password: 123456
      driver-class-name: com.mysql.cj.jdbc.Driver
      type: com.alibaba.druid.pool.DruidDataSource
      initial-size: 1
      min-idle: 1
      max-active: 10
      max-wait: 60000
      #配置間隔多久才進行一次檢測,檢測需要關(guān)閉的空閑連接,單位是毫秒
      time-between-eviction-runs-millis: 60000
      #配置一個連接在池中最小生存的時間,單位是毫秒
      min-evictable-idle-time-millis: 30000
      durid:
      #配置監(jiān)控統(tǒng)計攔截的filters,stat:監(jiān)控統(tǒng)計、log4j:日志記錄、wall:防御sql注入
        filters: wall,stat,log4j

三、注入druid配置

@SpringBootConfiguration
public class DruidConfig {
    
    //將自定義的 Druid數(shù)據(jù)源添加到容器中,不再讓 Spring Boot 自動創(chuàng)建
    //綁定全局配置文件中的 druid 數(shù)據(jù)源屬性到 com.alibaba.druid.pool.DruidDataSource從而讓它們生效
    //@ConfigurationProperties(prefix = "spring.datasource"):作用就是將 全局配置文件中
    //前綴為 spring.datasource的屬性值注入到 com.alibaba.druid.pool.DruidDataSource 的同名參數(shù)中
    @Bean
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource druidDataSource() {
        return new DruidDataSource();
    }
    //配置 Druid 監(jiān)控管理后臺的Servlet;
    //內(nèi)置 Servlet 容器時沒有web.xml文件,所以使用 Spring Boot 的注冊 Servlet 方式
    @Bean
    public ServletRegistrationBean registrationBean() {
        ServletRegistrationBean<StatViewServlet> bean = new ServletRegistrationBean<>(new StatViewServlet(), "/druid/*");
        Map<String, String> initParameters = new HashMap<>();
        initParameters.put("loginUsername", "admin");
        initParameters.put("loginPassword", "12345");
        bean.setInitParameters(initParameters);
        return bean;
    }
    //配置 Druid 監(jiān)控 之  web 監(jiān)控的 filter
    //WebStatFilter:用于配置Web和Druid數(shù)據(jù)源之間的管理關(guān)聯(lián)監(jiān)控統(tǒng)計
    @Bean
    public FilterRegistrationBean webStatFilter() {
        FilterRegistrationBean bean = new FilterRegistrationBean();
        bean.setFilter(new WebStatFilter());
        //exclusions:設(shè)置哪些請求進行過濾排除掉,從而不進行統(tǒng)計
        Map<String, String> initParams = new HashMap<>();
        initParams.put("exclusions", "*.js,*.css,/druid/*,/jdbc/*");
        bean.setInitParameters(initParams);
        //"/*" 表示過濾所有請求
        bean.setUrlPatterns(Arrays.asList("/*"));
        return bean;
    }
    /**
     * 去除Druid監(jiān)控頁面的廣告
     */
    @Bean
    public FilterRegistrationBean removeDruidAdFilter() throws IOException {
        String text = Utils.readFromResource("support/http/resources/js/common.js");
        final String newJs = text.replace("this.buildFooter();", "");
        // 新建一個過濾器注冊器對象
        FilterRegistrationBean<Filter> registration = new FilterRegistrationBean<>();
        // 注冊common.js文件的過濾器
        registration.addUrlPatterns("/druid/js/common.js");
        // 添加一個匿名的過濾器對象,并把改造過的common.js文件內(nèi)容寫入到瀏覽器
        registration.setFilter((servletRequest, servletResponse, filterChain) -> {
            // 重置緩沖區(qū),響應(yīng)頭不會被重置
            servletResponse.resetBuffer();
            // 把改造過的common.js文件內(nèi)容寫入到瀏覽器
            servletResponse.getWriter().write(newJs);
        });
        return registration;
    }
}

四、測試 druid 數(shù)據(jù)源是否啟用

@SpringBootTest(classes = AutoApplication.class)
public class DuridTest {
    //DI注入數(shù)據(jù)源
    @Autowired
    private DataSource dataSource;
    @Test
    public void contextLoads() throws SQLException {
        //看一下默認數(shù)據(jù)源
        System.out.println(dataSource.getClass());
        //獲得連接
        Connection connection = dataSource.getConnection();
        System.out.println(connection);
        DruidDataSource druidDataSource = (DruidDataSource) dataSource;
        System.out.println("druidDataSource 數(shù)據(jù)源最大連接數(shù):" + druidDataSource.getMaxActive());
        System.out.println("druidDataSource 數(shù)據(jù)源初始化連接數(shù):" + druidDataSource.getInitialSize());
        //關(guān)閉連接
        connection.close();
    }
}

五、登陸druid后臺控制臺,用戶名及密碼在DruidConfig 配置中

127.0.0.1:65000/druid/login.html

到此這篇關(guān)于Springboot項目引入druid安裝部署使用教程的文章就介紹到這了,更多相關(guān)Springboot項目引入druid內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java中的clone方法詳解_動力節(jié)點Java學(xué)院整理

    Java中的clone方法詳解_動力節(jié)點Java學(xué)院整理

    clone顧名思義就是復(fù)制, 在Java語言中, clone方法被對象調(diào)用,所以會復(fù)制對象。下面通過本文給大家介紹java中的clone方法,感興趣的朋友一起看看吧
    2017-06-06
  • IntelliJ IDEA配置Tomcat(完整版圖文教程)

    IntelliJ IDEA配置Tomcat(完整版圖文教程)

    這篇文章主要介紹了IntelliJ IDEA配置Tomcat(完整版圖文教程),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-05-05
  • java.lang.OutOfMemoryError: Java heap space錯誤的問題解決

    java.lang.OutOfMemoryError: Java heap space錯誤

    本文主要介紹了java.lang.OutOfMemoryError: Java heap space錯誤的問題解決,包括內(nèi)存泄漏、數(shù)據(jù)過大和JVM堆大小配置不足,提供了解決方法,具有一定的參考價值,感興趣的可以了解一下
    2025-03-03
  • Mybatis?plus?where添加括號方式

    Mybatis?plus?where添加括號方式

    這篇文章主要介紹了Mybatis?plus?where添加括號方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • SpringBoot選擇自有bean優(yōu)先加載實現(xiàn)方法

    SpringBoot選擇自有bean優(yōu)先加載實現(xiàn)方法

    在一些需求中,可能存在某些場景,比如先加載自己的bean,然后自己的bean做一些DB操作,初始化配置問題,然后后面的bean基于這個配置文件,繼續(xù)做其他的業(yè)務(wù)邏輯。因此有了本文的這個題目
    2023-03-03
  • spring boot項目同時傳遞參數(shù)和文件的多種方式代碼演示

    spring boot項目同時傳遞參數(shù)和文件的多種方式代碼演示

    這篇文章主要介紹了spring boot項目同時傳遞參數(shù)和文件的多種方式,在開發(fā)接口中,遇到了需要同時接收參數(shù)和文件的情況,可以有多種方式實現(xiàn)文件+參數(shù)的接收,這里基于spring boot 3 + vue 3 + axios,做一個簡單的代碼演示,需要的朋友可以參考下
    2023-06-06
  • 解決Error:Java:無效的源發(fā)行版:14問題

    解決Error:Java:無效的源發(fā)行版:14問題

    在項目開發(fā)中,版本不一致常見問題,首先,應(yīng)檢查本地JDK版本,使用命令java-version,其次,核對項目及模塊版本,若有不一致,通過修改pom.xml文件同步版本,重新下載依賴即可解決問題,這種方法簡單有效,適用于多種開發(fā)環(huán)境
    2024-10-10
  • Java 中函數(shù) Function 的使用和定義示例小結(jié)

    Java 中函數(shù) Function 的使用和定義示例小結(jié)

    這篇文章主要介紹了Java 中函數(shù) Function 的使用和定義小結(jié),本文通過實例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-07-07
  • spring cloud gateway如何獲取請求的真實地址

    spring cloud gateway如何獲取請求的真實地址

    這篇文章主要介紹了spring cloud gateway如何獲取請求的真實地址問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • intellij idea中spring boot properties文件不能自動提示問題解決

    intellij idea中spring boot properties文件不能自動提示問題解決

    這篇文章主要介紹了intellij idea中spring boot properties文件不能自動提示問題解決,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02

最新評論

新巴尔虎右旗| 昌黎县| 龙海市| 广平县| 伊吾县| 射洪县| 和田县| 女性| 新泰市| 门头沟区| 潍坊市| 秭归县| 台江县| 昌都县| 缙云县| 张北县| 都安| 广东省| 巴彦县| 栾城县| 江油市| 松阳县| 蒲江县| 平邑县| 杭州市| 安康市| 垣曲县| 南投市| 曲靖市| 龙口市| 安阳县| 南召县| 华亭县| 射阳县| 叙永县| 峨边| 通州市| 公主岭市| 合作市| 东乡族自治县| 宜兰市|