druid连接池配置文件(druid 连接池配置)

druid连接池配置文件(druid 连接池配置)前一篇文章我们熟悉了 HikariCP 连接池 也了解到它的性能很高 今天我们讲一下另一款比较受欢迎的连接池 Druid 这是阿里开源的一款数据库连接池 它官网上声称 为监控而生 他可以实现页面监控 看到 SQL 的执行次数 时间和慢 SQL 信息 也可以对数据库密码信息进行加密 也可以对监控结果进行日志的记录 以及可以实现对敏感操作实现开关 杜绝 SQL 注入 下面我们详细讲一下它如何与 Spring 集成 并且顺便了解一下它的监控的配置 文章要点 访问 http 127 0 0 1



前一篇文章我们熟悉了HikariCP连接池,也了解到它的性能很高,今天我们讲一下另一款比较受欢迎的连接池:Druid,这是阿里开源的一款数据库连接池,它官网上声称:为监控而生!他可以实现页面监控,看到SQL的执行次数、时间和慢SQL信息,也可以对数据库密码信息进行加密,也可以对监控结果进行日志的记录,以及可以实现对敏感操作实现开关,杜绝SQL注入,下面我们详细讲一下它如何与Spring集成,并且顺便了解一下它的监控的配置。

文章要点:

访问:http://127.0.0.1:8080/druid/ ,弹出登陆界面,用户和密码对应我们的配置文件中设置的用户名和密码

登陆进去可以看到里面有很多监控,这里我们只看我们本次所关心的,数据源,SQL监控,URL监控,其他的可以自行研究。

这里你可能会有疑问 ,id =1和id=2怎么还是分开的,如果我id有一亿个,难道要在监控页面上有一亿条记录吗?不是应该都应该是id=?的形式吗?这里后面会讲到,涉及到sql合并的监控配置

在druid的jar中,META-INF/druid-filter.properties中有其内置的filter,内容如下:

default、stat、wall等是filter的别名,可以在application.properties中可以通过spring.datasource.druid.filters属性指定别名来开启相应的filter,也可以在Spring中通过属性注入方式来开启,接下来介绍一下比较常用的filter

继承stat,基本特性和stat是一样的,不做延伸

Druid内置提供了四种LogFilter(Log4jFilter、Log4j2Filter、CommonsLogFilter、Slf4jLogFilter),用于输出JDBC执行的日志

WallFilter的功能是防御SQL注入攻击。它是基于SQL语法分析,理解其中的SQL语义,然后做处理的,智能,准确,误报率低。减少风险的发生,wall拦截器还是很重要的。比如说不允许使用truncate,不允许物理删除,这时候wall就用得上了。配置方式有两种:

这种配置是默认配置,而且大多数都不会拦截,可能不符合特定的场景,默认属性值参照:https://www.bookstack.cn/read/Druid/ffdd9118e.md

这种方式的好处是:我们可以针对特定场景进行限定,比如说不能用存储过程,不能物理删除,是否允许语句中有注释等等。

使用下面的命令生成数据库密码的密文和秘钥对

自己启动一下试试,发现一切正常,信息安全问题也解决了。

选择哪一款就见仁见智了,不过两款都是开源产品,阿里的Druid有中文的开源社区,交流起来更加方便,并且经过阿里多个系统的实验,想必也是非常的稳定,而Hikari是SpringBoot2.0默认的连接池,全世界使用范围也非常广,对于大部分业务来说,使用哪一款都是差不多的,毕竟性能瓶颈一般都不在连接池。大家可根据自己的喜好自由选择

今天的文章 druid连接池配置文件(druid 连接池配置)分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2025-06-25 13:27
下一篇 2025-07-08 20:57

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/6133.html