SpringBoot2.x預設連線池hikari及druid連線池
阿新 • • 發佈:2018-11-05
在SpringBoot2.x的預設連線池是hikari。我們可以通過spring-boot-starter-jdbc的依賴發現。但是HikariCP應該是目前速度最快的連線池了。
1.hikari連線池使用
pom.xml中jdbc的三座標
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency>
配置檔案
# 連線四大引數 spring.datasource.url=jdbc:mysql://localhost:3306/wzy spring.datasource.username=root spring.datasource.password=wanzhuang # 可省略,SpringBoot自動推斷 spring.datasource.driverClassName=com.mysql.jdbc.Driver spring.datasource.hikari.idle-timeout=60000 spring.datasource.hikari.maximum-pool-size=30 spring.datasource.hikari.minimum-idle=10
2.druid連線池使用
(1)pom三座標
<!-- Druid連線池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.6</version>
</dependency>
(2)配置檔案
spring: datasource: type: com.alibaba.druid.pool.DruidDataSource # 配置當前要使用的資料來源的操作型別 driver-class-name: com.mysql.jdbc.Driver username: root password: 123456 url: jdbc:mysql://192.168.2.202:3306/sell?characterEncoding=utf-8&useSSL=false filters: stat,wall,log4j
(3)springboot中druid配置類
@Configuration
public class DruidConfig {
/**
* 其中工addInitParameter()方法為初始化引數
* @return
*/
@Bean
public ServletRegistrationBean druidServlet() { // 主要實現WEB監控的配置處理
ServletRegistrationBean servletRegistrationBean = new ServletRegistrationBean(
new StatViewServlet(), "/druid/*"); // 現在要進行druid監控的配置處理操作
servletRegistrationBean.addInitParameter("allow",
"127.0.0.1,192.168.4.19"); // 白名單
servletRegistrationBean.addInitParameter("deny", "192.168.28.200"); // 黑名單
servletRegistrationBean.addInitParameter("loginUsername", "admin"); // 使用者名稱
servletRegistrationBean.addInitParameter("loginPassword", "[email protected]"); // 密碼
servletRegistrationBean.addInitParameter("resetEnable", "false"); // 是否可以重置資料來源
return servletRegistrationBean ;
}
/**
* addUrlPatterns()方法為新增過濾規則
* addInitParameter()方法為新增不需要忽略的格式資訊
* setOrder()方法表示新增執行過濾順序
* @return
*/
@Bean
public FilterRegistrationBean filterRegistrationBean() {
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean() ;
filterRegistrationBean.setFilter(new WebStatFilter());
filterRegistrationBean.addUrlPatterns("/*"); // 所有請求進行監控處理
filterRegistrationBean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.css,/druid/*");
return filterRegistrationBean ;
}
/**
* @ConfigurationProperties(prefix = "spring.datasource")註解是把application.yml檔案中
* 配置資訊封裝為實體類
* @return
*/
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource druidDataSource() {
return new DruidDataSource();
}
}
【注意】裡面定義了登入druid的帳號和密碼