SpringBoot配置MySql數據庫和Druid連接池


1.pom文件增加相關依賴

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
       <version>5.0.4</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId>
       <version>1.1.0</version> </dependency>

2.mysql大家應該都很了解了,這里主要介紹一下druid連接池。之前的項目大多數都使用c3p0或者其他的連接池,這里使用druid連接池,好處就是可以監控數據庫訪問性能,druid內置提供了一個功能強大的StatFilter插件,能夠詳細統計SQL的執行性能,這對於線上分析數據庫訪問性能有幫助。這里看一下配置文件下配置,這里使用的配置文件是application.yml

spring:          #表示該配置直接為Spring容器負責處理
  datasource:
      type: com.alibaba.druid.pool.DruidDataSource   #配置當前要使用的數據源的操作類型那個
      driver-class-name: org.gjt.mm.mysql.Driver       #配置MySQL的驅動程序類
      url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8
      username: root
      password: 123456
      filters: stat,wall,log4j     #druid監控配置
      dbcp2:
        min-idle: 5         #數據庫連接池的最小維持連接數
        initial-size: 5     #初始化提供的連接數
        max-total: 5          #最大的連接數
        max-wait-millis: 200        #等待連接獲取的最大超時時間

3.最后,還需要增加一個druid的基本配置,這里直接上代碼。

import javax.sql.DataSource;

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 com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;

@Configuration
public class DruidConfig {
    @Bean
    public ServletRegistrationBean druidServlet() {// 主要實現web監控的配置處理
        ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(
                new StatViewServlet(), "/druid/*");//表示進行druid監控的配置處理操作
        servletRegistrationBean.addInitParameter("allow", "127.0.0.1,129.168.1.11");//白名單
        servletRegistrationBean.addInitParameter("deny", "129.168.1.12");//黑名單
        servletRegistrationBean.addInitParameter("loginUsername", "root");//用戶名
        servletRegistrationBean.addInitParameter("loginPassword", "root");//密碼
        servletRegistrationBean.addInitParameter("resetEnable", "false");//是否可以重置數據源
        return servletRegistrationBean;

    }
    @Bean    //監控
    public FilterRegistrationBean filterRegistrationBean(){
        FilterRegistrationBean filterRegistrationBean=new FilterRegistrationBean();
        filterRegistrationBean.setFilter(new WebStatFilter());
        filterRegistrationBean.addUrlPatterns("/*");//所有請求進行監控處理
        filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.css,/druid/*");//排除
        return filterRegistrationBean;
    }
    @Bean
    @ConfigurationProperties(prefix = "spring.datasource")
    public DataSource druidDataSource() {
        return new DruidDataSource();
    }
}

我們可以看到這里的幾個基本配置,白名單,黑名單,顧名思義就是設置誰可以訪問,誰不能訪問。用戶名, 密碼就不用多說了。最后我們登錄druid監控,看一下,訪問地址:http://localhost:port/druid/login.html,會看到如下界面

使用上面配置好的用戶名密碼進行登錄,便實現了druid監控

 


免責聲明!

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



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