Druid通俗易懂的快速入门
程序员文章站
2022-04-15 18:34:21
Druid是什么通俗点来说它是个不但继承了tomcat、dbcp2数据库连接池的优点,还支持扩展插件的数据库连接池,其中最常用的三个插件:start、wall、log4j带给druid强大的后台监控、防御sql注入和日志等功能。再简单点来说,它会有一个自己的后台监控页面,像这样:简单例子依赖 com.alibaba
Druid是什么
通俗点来说它是个不但继承了tomcat、dbcp2数据库连接池的优点,还支持扩展插件的数据库连接池,
其中最常用的三个插件:start、wall、log4j带给druid强大的后台监控、防御sql注入和日志等功能。
再简单点来说,它会有一个自己的后台监控页面,像这样:
简单例子
依赖
<!--Druid-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.21</version>
</dependency>
<!--log4j-->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
配置文件
spring:
datasource:
username: root
password:
url: jdbc:mysql://127.0.0.1:3306/mybatis_plus?serverTimezone=GMT&&characterEncoding=utf-8
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource #更改数据库的数据源
# druid继承的tomcat、dbcp2的一些属性
initialSize: 5
minIdle: 5
maxActive: 20
maxWait: 60000
timeBetweenEvictionRunsMinllis: 60000
minEvictableIdleTimeMills: 300000
testWhileIdle: true
testOnBorrow: false
testOnReturn: fales
poolPreparedStatements: true
# druid自己的能支持扩展插的配置
filters: start,wall,log4j #分别是后台监控、防御sql注入和日志
maxPoolPreparedStatementPerConnectionSize: 20
useGlobalDataSourceStat: true
connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500
配置类
@Configuration
public class DruidConfig {
@ConfigurationProperties(prefix = "spring.datasource")
@Bean
public DataSource druidDataSource(){
return new DruidDataSource();//实例druid数据源
}
@Bean
public ServletRegistrationBean servletRegistrationBean(){
//配置后台页面的映射路径
ServletRegistrationBean<StatViewServlet> servlet =
new ServletRegistrationBean<>(new StatViewServlet(),"/druid/*");
HashMap<String,String> init = new HashMap<>();
//配置登陆账号密码
init.put("loginUsername","ncb");
init.put("loginPassword","123");
servlet.setInitParameters(initParameters);
return servlet;
}
}
验证结果
-
首先打开localhost:8006/druid(端口改成自己项目的)
-
Postman向该项目发请求,使用8006端口的SQL(我这只是在86端口用了Ferign,实际访问的还是8006端口的SQL)
-
到SQL防火墙下找到白名单,看到了访问涉及到的SQL语句也进来了
当然啦,druid的知识还有很多,这里算做个笔记吧。
本文地址:https://blog.csdn.net/FHlang/article/details/110212688
推荐阅读
-
Python 数值区间处理_对interval 库的快速入门详解
-
Android中的常用尺寸单位(dp、sp)快速入门教程
-
全网最通俗易懂的Kafka入门!
-
Flink的快速入门(一)
-
Python快速入门之迭代器和生成器!最详细的教程!祝早日入门!
-
新手零基础快速建站入门,只要做好五步就能搭建属于自己的网站
-
RabbitMQ的简单模式快速入门与超时异常的处理方法
-
10 分钟快速入门 Python3的教程
-
JAVA WEB快速入门之从编写一个基于SpringBoot+Mybatis快速创建的REST API项目了解SpringBoot、SpringMVC REST API、Mybatis等相关知识
-
NumPy 快速入门:数组对象的排序、插入、删除、添加及其他特殊方法介绍