spring boot 之 集成 druid数据库连接池

spring boot版本:2.3.12.RELEASE
MySQL版本:8.0

Druid简介

Druid是阿里开源的一个数据库连接池和SQL查询优化工具,用于提高应用程序对数据库的性能和可扩展性。主要提供的功能:数据库连接池、数据库连接池监控、SQL查询优化、数据源管理、防御SQL注入、统计和监控。

引入pom依赖

<!--druid-spring-boot-starter-->
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.16</version>
</dependency><!-- mysql-connector-j -->
<dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><version>8.0.33</version>
</dependency>

application.yml配置

server:port: 8989servlet:context-path: /druidDemospring:datasource:type: com.alibaba.druid.pool.DruidDataSourcedruid:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/spring_boot_test?allowMultiQueries=true&serverTimezone=Asia/Shanghai&useSSL=falseusername: rootpassword: 123456# 如果initialSize数量较多时,打开会加快应用启动时间async-init: true# 连接池初始化时创建的连接数initial-size: 5# 连接池中最大连接数max-active: 50# 连接池中最小空闲连接数min-idle: 5# 连接池中最大空闲连接数max-idle: 20# 配置获取连接等待超时的时间 毫秒max-wait: 6000# 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒time-between-eviction-runs-millis: 60000# 增强timeBetweenEvictionRunsMillis的周期性连接检查,minIdle内的空闲连接,每次检查强制验证连接有效性keep-alive: true# 配置一个连接在池中最小生存的时间,单位是毫秒min-evictable-idle-time-millis: 300000max-evictable-idle-time-millis: 172800000# 用于检测连接是否有效的SQL语句validation-query: select 1validation-query-timeout: 1# 是否开启空闲连接的检测test-while-idle: true# 是否开启连接的检测功能,在获取连接时检测连接是否有效test-on-borrow: false# 是否开启连接的检测功能,在归还连接时检测连接是否有效test-on-return: false# 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。pool-prepared-statements: false# 配置监控统计拦截的filters,去掉后监控界面sql无法统计,'wall'用于防火墙# 配置监拉统计挡成的filters. stat: 监控统计、Log4j:日志记录、waLL: 防御sqL注入filters: stat,wall,log4j2# 配置后台监控stat-view-servlet:# http://localhost:8989/mp/druid/index.html# 启用StatViewServletenabled: true# 访问内置监控页面的路径,内置监控页面的首页是/druid/index.htmlurl-pattern: /druid/*# 禁用页面重置按钮reset-enable: true# 配置监控页面访问密码login-username: rootlogin-password: 123456# IP 黑名单,deny优先于allow,如果在deny列表中,就算在allow列表中,也会被拒绝deny:# IP 白名单,没有配置或者为空则允许所有访问allow: 127.0.0.1# 配置过滤器,过滤掉静态文件web-stat-filter:enabled: trueurl-pattern: /*exclusions: /druid/*,*.js,*.css,*.gif,*.jpg,*.bmp,*.png,*.icomybatis-plus:# 实体类Mapper.xml文件所在包mapper-locations: classpath:mapper/*Mapper.xml# 指定 MyBatis 别名包扫描路径,用于给包中的类注册别名。注册后,在 Mapper 对应的 XML 文件中可以直接使用类名,无需使用全限定类名。type-aliases-package: com.example.pojoconfiguration:# 开启驼峰映射,A_COLUMN -> aColumnmap-underscore-to-camel-case: true# 是否允许单条sql 返回多个数据集multiple-result-sets-enabled: true# mybatis-plus的日志输出到控制台log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

访问监控页面

端口是你自己定义的端口,druidDemo来自于server.servlet.context-path配置的值,按需修改即可。
浏览器输入:http://127.0.0.1:8989/druidDemo/druid/login.html ,输入你自己配置的账户密码即可访问。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/16483.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

.NET 分享一款多种方式维持权限的工具

01阅读须知 此文所提供的信息只为网络安全人员对自己所负责的网站、服务器等&#xff08;包括但不限于&#xff09;进行检测或维护参考&#xff0c;未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失&#xf…

2024,java开发,已经炸了吗?

网友&#xff1a; 炸的透透的了&#xff0c;坐标南京。 一月底&#xff0c;一个好哥们&#xff0c;双休朝九晚六不加班18K&#xff0c;被裁。 入职不到两年&#xff0c;算是工资和年终奖才赔了6.5W左右。 上周五新公司入职&#xff0c;周六开始加班。现在每周134加班到晚上八…

Unity功能——通过按键设置物体朝左/右旋转(含C#转xlua版)

博文简介&#xff1a; 开发场景&#xff1a;unity的3d场景&#xff1b; 功能&#xff1a;当设定的键被按下时&#xff0c;进行物体朝左/右旋转&#xff1b; 适用范围&#xff1a;本文代码适用于设置3d物体朝左右旋转&#xff0c;也适用于设置UI对象朝左右旋转&#xf…

第22讲:RBD块存储COW克隆解除父子镜像的依赖关系

RBD块存储COW克隆解除父子镜像的依赖关系 1.COW镜像克隆存在的依赖关系 在前面使用copy-on-write机制基于快照做出来的链接克隆&#xff0c;与快照依赖性很强&#xff0c;如果快照损坏或者丢失&#xff0c;那么克隆的镜像将无法使用&#xff0c;使用这个镜像创建的虚拟机也会…

深度学习模型

深度学习模型 深度学习网络模型是人工智能领域的重要分支&#xff0c;它通过模拟人脑神经网络的工作方式来处理数据并识别模式。以下是对深度学习网络模型的一些主要类型的详细概述&#xff1a; 卷积神经网络&#xff08;Convolutional Neural Network, CNN&#xff09; 结构&a…

数据库模块名称汇总

1.Oracle。 2.SQLServer。

MyBatis中的Where标签:提升你的SQL查询效率

哈喽&#xff0c;大家好&#xff0c;我是木头左&#xff01; 理解MyBatis的Where标签 MyBatis是一款优秀的持久层框架&#xff0c;它提供了许多强大的标签来帮助编写更优雅、高效的SQL语句。其中&#xff0c;<where>标签是使用频率极高的一个&#xff0c;它能够自动处理…

【分别介绍在vue2和vue3下如何使用ElementUI的图标组件,并举例说明】

在Vue 2和Vue 3下使用Element UI的图标组件&#xff0c;其方法和步骤有所不同。以下将分别进行介绍&#xff0c;并给出相应的示例。 Vue 2下使用Element UI的图标组件 安装Element UI 首先&#xff0c;你需要确保已经安装了Vue 2项目。然后&#xff0c;使用npm或yarn安装Eleme…

Mac配置node环境

1.下载nvm(node版本管理工具&#xff0c;同Anaconda对Python的关系&#xff09;。 curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash 2.配置vi ~/.zshrc文件&#xff0c;添加如下配置&#xff1a; export NVM_DIR"$HOME/.nvm" [ -…

git生成公钥私钥

如果您在安装 Git 后没有看到 .ssh 目录,这是正常的。.ssh 目录并不是 Git 自动创建的,而是需要您手动创建和配置。 以下是一般的步骤: 打开您的终端或命令提示符。 检查是否已经生成了 SSH 密钥对: ls -al ~/.ssh如果看到 id_rsa 和 id_rsa.pub 文件,说明已经有 SSH 密钥对了…

pytest:指定测试用例执行顺序

在自动化测试中&#xff0c;测试用例的执行顺序有时对测试结果具有重要影响。本文将介绍如何在pytest框架中使用pytest-ordering插件以及Collection hooks来控制测试用例的执行顺序。 方式1&#xff1a; 使用pytest-ordering插件控制执行顺序 1.1 安装pytest-ordering插件 首…

生命在于学习——Python人工智能原理(1.1)

说明&#xff1a;今年学一部分人工智能方向的知识&#xff0c;网安也会穿插&#xff0c;看后续如何将二者结合起来。 一、人工智能的基本知识 1、人工智能的起源 1956年美国达特茅斯学院召开了一个夏季论班&#xff0c;首次提出人工智能的概念。 1950年图灵提出了图灵测试&a…

springboot + Vue前后端项目(第十二记)

项目实战第十二记 1.写在前面2. 整合Echarts2.1 vue安装Echarts2.2 使用Echarts2.3 EchartsController编写2.4 Home.vue编写 总结写在最后 1.写在前面 本篇主要讲解系统整合Echarts 2. 整合Echarts 2.1 vue安装Echarts npm i echarts -S2.2 使用Echarts vue中使用echarts的…

Thinkphp5内核宠物领养平台H5源码

源码介绍 Thinkphp5内核流浪猫流浪狗宠物领养平台H5源码 可封装APP&#xff0c;适合做猫狗宠物类的发信息发布&#xff0c;当然懂的修改一下&#xff0c;做其他信息发布也是可以的。 源码预览 源码下载 https://download.csdn.net/download/huayula/89361685

React项目,结合 Antd 的Upload上传组件实现上传前校验

背景 最近工作中&#xff0c;遇到这样一个需求&#xff1a;在登录首页&#xff0c;开发一个上传文件的功能&#xff0c;用户可以在该页面点击该区域上传文件&#xff0c;但是点击前需要做一些判断&#xff0c;若用户未登录&#xff0c;则直接弹出登录弹框&#xff1b;否则&…

Python 开心消消乐

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:「stormsha的主页」…

《德米安:彷徨少年时》

文前 我之所愿无非是尝试依本性而生活&#xff0c; 却缘何如此之难&#xff1f; 强盗 疏于独立思考和自我评判的人只能顺应现成的世俗法则&#xff0c;让生活变轻松。其他人则有自己的戒条&#xff1a;正派人惯常做的事于他可能是禁忌&#xff0c;而他自认合理的或许遭他人唾…

机器学习笔记(概念)

一.基础概念 1.机器学习的实质为&#xff1a;根据现有数据,寻找输入数据和输出数据的映射关系/函数 2.机器学习的任务&#xff1a; ​ 回归&#xff1a;输出为连续值 ​ 分类&#xff1a;输出为离散值 ​ 聚类&#xff1a;无标记信息的输出(例如根据瓜的外观分为两部分) …

自动驾驶技术现状与需求分析

随着科技的不断进步和智能化浪潮的席卷&#xff0c;自动驾驶技术已成为当今交通领域的热点话题。本文旨在深入探讨自动驾驶技术的当前发展状况&#xff0c;并对其未来的市场需求进行细致分析。首先&#xff0c;我们将回顾自动驾驶技术的起源、发展历程以及当前的技术水平&#…

探秘SpringBoot默认线程池:了解其运行原理与工作方式(@Async和ThreadPoolTaskExecutor)

文章目录 文章导图Spring封装的几种线程池SpringBoot默认线程池TaskExecutionAutoConfiguration&#xff08;SpringBoot 2.1后&#xff09;主要作用优势使用场景如果没有它 2.1版本以后如何查看参数方式一&#xff1a;通过Async注解--采用ThreadPoolTaskExecutordetermineAsync…