druid数据库连接池配置详解(druid连接池配置文件)

druid数据库连接池配置详解(druid连接池配置文件)p id main toc strong 目录 strong p 检测方法 后面的测试结果 debug 结果都是基于该测试类测试 一 数据库默认的数据连接池 二 纯 yml 配置 druid 阿里巴巴数据库连接池 强烈推荐方式 我也是这么配置的 三 需要借助配置文件 Java 类来注入属性的配置 四

大家好,我是讯享网,很高兴认识大家。



 <p id="main-toc"><strong>目录</strong></p> 

讯享网

检测方法–后面的测试结果,debug结果都是基于该测试类测试。

一、数据库默认的数据连接池

二、纯yml配置druid阿里巴巴数据库连接池(强烈推荐方式,我也是这么配置的)

三、需要借助配置文件,Java类来注入属性的配置

四、注入同三,只是注入配置文件可以改成自己对应属性注入,有yml基础的看的懂,方式差不多

踩坑点总结


整篇文章基于SpringBoot2.2.6编写。不同SpringBoot配置存在某些差异,后面会提。

检测方法–后面的测试结果,debug结果都是基于该测试类测试。

作用:用于检测数据库连接池是否生效,属性是否注入等。

测试类如下,通过打断点测试

讯享网

此方法每次可以根据输出结果观察到数据源是哪种,连接是哪种

测试属性是否注入,断点位置如下


讯享网

通过debug启动,然后查看dataSource的属性,对于我,一般只要查看initialSize=0就是未注入成功

 

下面进入正题

一、数据库默认的数据连接池

application.yml配置

 
    

注意:如果遇到什么错,基本上是url:jdbc那个属性后面的配置没有写正确,时区啥的

进行测试,通过test打印数据源类,数据连接类型如下图

SpringBoot2.2.6默认是使用的是HikariDataSource作为数据库连接池

 

二、纯yml配置druid阿里巴巴数据库连接池(强烈推荐方式,我也是这么配置的)

依赖:使用strarer启动器作为依赖,便可以实现纯yml配置

讯享网

yml配置信息如下:

 
    

debug测试结果:

1、属性都正常注入,成功

2、输入结果拿到的是阿里巴巴druid数据库自动配置starater的连接池和连接

3、启动应用程序后–不是测试啦,登录localhost:8080/druid出现数据库监测界面

4、输入yml配置文件的账户密码,druid,druid123,登录成功,结束

 

三、需要借助配置文件,Java类来注入属性的配置

导入的是普通的阿里巴巴druid依赖,这里不支持yml纯配置,不是starter,检测就是debug你会发现数据注入不成功。

依赖:

讯享网

还是用原来的yml配置文件,未修改

debug测试结果

1、属性对不上,注入失败

2、数据库连接池是druid,拿到的连接是普通的数据库连接

难道是yml配置问题?修改一下,将yml配置的druid节点去掉再次测试

新的配置文件

 
    

测试结果还是一样,这里不贴结果

其实是要自己编写属性配置文件,进行注入

yml配置文件

讯享网

属性注入类DruidConfig

 
    

重新测试,测试结果

1、属性注入成功

2、输出结果,拿到的是普通的druid数据源和连接

3、启动主程序,登录监控localhost:8080/druid,输入账户密码admin/admin123成功

 

四、注入同三,只是注入配置文件可以改成自己对应属性注入,有yml基础的看的懂,方式差不多

配置文件DruidConfig给出如下

讯享网

yml配置

 
    

 

踩坑点总结

版本问题1:

版本问题会导致很多问题,如比较低的SpringBoot版本,在配置里面,很多加了log4j会不会报错,但是后面版本高的SpringBoot就会报错,需要去掉log4j或者加入log4j依赖或者改成slf4j

 

版本问题2:

看到很多在DruidConfig里面配了过滤器这个在同样在低版本中的SpringBoot可以,但是高版本也不支持,直接去掉就行了。

 

jdbc版本问题:

driver依赖6以上的驱动是配置cj的,url时区问题常发生错误,注意配置后面属性&serverTimezone=GMT%2B8

 

差不多了吧,只是简单总结一下。

 


小讯
上一篇 2025-04-18 15:34
下一篇 2025-05-09 13:38

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/182578.html