SpringBoot整合druid数据源

embedded/2024/12/23 1:20:14/

SprintBoot默认使用的是HikariDataSource数据源,而且上次课中我们也说了这个数据源访问速度很快,但是这里还要给大家介绍一个第三方的数据源druid,它是阿里开发的一款开源的数据源,被很多人认为是Java语言中最好的数据库连接池,因为Druid能够提供强大的一整套监控和扩展功能,很爽。下面是具体的使用步骤:

1、导入maven的依赖

<dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.1.11</version>
</dependency>
<dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version>
</dependency>

使用了log4j就要自己在类路径下加配置文件:log4j.properties

java">log4j.rootLogger = debug,stdout, D
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target = System.out
log4j.appender.stdout.Threshold = INFO
log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p %m%n
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ./log4j.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = DEBUG
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern=%d %p %m%n

注意:druid依赖log4j的日志jar包,但是SpringBoot默认使用的是slf4j+logback,所以这里导入log4j的jar包才行

2、在全局配置文件通过type的配置改变数据源

java">spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

3、在运行一下测试方法,看看能不能拿到数据源

java">class com.alibaba.druid.pool.DruidDataSource

4、不能用SpirngBoot默认利用反射的机制配置来获取druid数据源

因为数据源特有的配置SpringBoot默认配置是没有的,我们要自己做:

① 首先在全局配置文件中配上druid数据源自己的特性配置

java">#   数据源其他配置
spring.datasource.initialSize=5
spring.datasource.minIdle=5
spring.datasource.maxActive=20
spring.datasource.maxWait=60000
spring.datasource.timeBetweenEvictionRunsMillis=60000
spring.datasource.minEvictableIdleTimeMillis=300000
spring.datasource.validationQuery=SELECT 1 FROM DUAL
spring.datasource.testWhileIdle=true
spring.datasource.testOnBorrow=false
spring.datasource.testOnReturn=false
spring.datasource.poolPreparedStatements=true
#   配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙
spring.datasource.filters=stat,wall,log4j
spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.useGlobalDataSourceStat=true  
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=500

② 自己创建配置类来创建数据源对象,并且手动获取这些配置,配置到数据源里去

 5、配置druid的监控

① 配置管理后台的servlet,druid提供的这个servlet名字叫:StatViewServlet

② 配置web监控的拦截器filter,druid提供的filter名字叫 :WebStatFilter

6、看看效果


http://www.ppmy.cn/embedded/147947.html

相关文章

centos怎么安装haproxy

在CentOS上安装HAProxy的步骤如下&#xff1a; 添加HAProxy的官方仓库&#xff1a; HAProxy提供了一个官方的RPM仓库&#xff0c;可以通过添加这个仓库来安装最新版本的HAProxy。首先&#xff0c;你需要下载仓库的公钥并添加仓库&#xff1a; sudo rpm --import https://haprox…

PaddlePaddle推理模型利用Paddle2ONNX转换成onnx模型

训练paddleocr模型&#xff0c;可以按照如下教程或者直接百度其他的 PaddleOCR训练自己的数据集&#xff08;中英文&#xff09;&#xff08;全套&#xff09;和C#部署&#xff08;半套&#xff09;_c# paddleocr-CSDN博客 将训练后的模型转换成推理模型 -c后面是你配置的de…

圣诞快乐(h5 css js(圣诞树))

一&#xff0c;整体设计思路 圣诞树h5&#xff08;简易&#xff09; 1.页面布局与样式&#xff1a; 页面使用了全屏的黑色背景&#xff0c;中央显示圣诞树&#xff0c;树形由三层绿色的三角形组成&#xff0c;每一层的大小逐渐变小。树干是一个棕色的矩形&#xff0c;位于三角…

windwos defender实现白名单效果(除了指定应用或端口其它一律禁止)禁止服务器上网

一、应用场景说明 当我们的一台windows服务器中毒&#xff0c;变成别人肉鸡&#xff0c;不断向外请示非法网站或攻击其它服务器。 要彻底清除相关木马或病毒往往需要的时间比较长&#xff0c;比较有效的方法是禁止服务器主动向外发包除了网站端口和远程程序除外。 其实这就是一…

网络安全技术深度解析与实践案例

网络安全技术深度解析与实践案例 随着信息技术的飞速发展&#xff0c;计算机网络已经成为现代社会不可或缺的一部分。无论是个人生活、企业运营还是国家安全&#xff0c;网络都扮演着至关重要的角色。然而&#xff0c;网络空间的开放性和匿名性也带来了诸多安全隐患。因此&…

3 需求分析

一、需求分析的任务 1.确定对系统的综合要求 功能需求性能需求可靠性和可用性需求出错处理需求接口需求约束逆向需求将来可能提出的要求 二、分析建模与规格说明 1.分析建模 结构化分析实质上是一种创建模型的活动。为了开发出复杂的软件系统&#xff0c;系统分析员应该从不…

【C语言】信号

【C语言】信号 信号1. 信号状态2. 信号处理方式3. 信号注册相关函数4. 信号集相关函数 信号 1. 信号状态 信号有三种状态&#xff1a;产生、未决和递达 信号产生方式&#xff1a; 按键产生&#xff0c;ctrlc 产生 中断信号SIGINT&#xff0c;ctrl \ 产生退出信号 SIGQUIT并…

电子电器架构 ---整车区域控制器

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 所谓鸡汤,要么蛊惑你认命,要么怂恿你拼命,但都是回避问题的根源,以现象替代逻辑,以情绪代替思考,把消极接受现实的懦弱,伪装成乐观面对不幸的…