参考了很多文章,记录下自己的学习过程!
参考:https://blog.csdn.net/weixin_40776321/article/details/99633110
1. 在pom.xml中添加依赖:
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.20</version>
</dependency>
2. 在application-xxx.yaml中添加数据源配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://xx.xx.xx.xx:3306/DB?useSSL=false&useTimezone=true&serverTimezone=GMT%2B8&allowMultiQueries=true
username: root
password: 112233
driver-class-name: com.mysql.cj.jdbc.Driver
dbcp2:
min-idle: 3 # 数据库连接池的最小维持连接数
initial-size: 3
max-total: 5 # 最大的连接数
max-wait-millis: 200 # 等待连接获取的最大超时时间
3. 添加一个Druid数据源配置文件:DruidConfig.java
package com.joe.config;
import com.alibaba.druid.pool.DruidDataSource;
import com.alibaba.druid.support.http.StatViewServlet;
import com.alibaba.druid.support.http.WebStatFilter;
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 javax.sql.DataSource;
import java.util.HashMap;
@Configuration
public class DruidConfig {
@Bean
@SuppressWarnings("unchecked")
public ServletRegistrationBean druidServlet()
{
var bean = new ServletRegistrationBean(new StatViewServlet(), "/druid/*");
var map = new HashMap<String, String>() {
{
put("allow", "127.0.0.1,192.168.1.10");
put("deny", "192.168.1.12");
put("loginUsername", "root");
put("loginPassword", "root");
put("resetEnable", "false");
}};
bean.setInitParameters(map);
return bean;
}
@Bean
@SuppressWarnings("unchecked")
public FilterRegistrationBean filterRegistrationBean()
{
var bean = new FilterRegistrationBean();
bean.setFilter(new WebStatFilter());
bean.addUrlPatterns("/*");
bean.addInitParameter("exclusions", "*.js,*.gif,*.jpg,*.css,/druid/*");
return bean;
}
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource druidDataSource()
{
return new DruidDataSource();
}
}
4. 编译、运行,测试下数据库操作是否正常!