【java web篇】数据库连接池Driud的使用
📋 个人简介
- 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜
- 📝 个人主页:馆主阿牛🔥
- 🎉 支持我:点赞👍+收藏⭐️+留言📝
- 📣 系列专栏:java 小白到高手的蜕变🍁
- 💬格言:要成为光,因为有怕黑的人!🔥

目录
- 📋 个人简介
- 前言
- 数据库连接池
- 数据库连接池Driud使用步骤
- 结语
前言
Druid是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0、DBCP、PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生的DB连接池!
数据库连接池
- 数据库连接池是个容器,负责分配、管理数据库连接( Connection )
- 它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;
- 释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。
- 好处:
.资源重用
.提升系统响应速度
.避免数据库连接遗漏

数据库连接池Driud使用步骤
- 导入druid的jar包
- 定义配置文件
- 加载配置文件
- 获取数据库连接池对象
- 获取连接
使用之前我们要先下载Driud的jar包:https://repo1.maven.org/maven2/com/alibaba/druid/
选择你需要的版本的jar包即可!
然后进行第一步:在IDEA中将这个jar包添加为库:


然后第二部,定义配置文件:

然后就可以进行3,4,5步的操作了:
package DruidDemo;import com.alibaba.druid.pool.DruidDataSourceFactory;
import javax.sql.DataSource;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.Statement;
import java.util.Properties;/*** @Author:Aniu* @Date:2023/2/26 20:07* @description TODO*/
public class Demo {public static void main(String[] args) throws Exception {// 加载配置文件Properties prop = new Properties();prop.load(new FileInputStream("javaweb/src/druid.properties"));// 获取数据库连接池对象DataSource dataSource = DruidDataSourceFactory.createDataSource(prop);// 获取连接Connection conn = dataSource.getConnection();// 下面的操作就和之前jdbc的一样了// 定义sqlString sql = "update spj set QTY = 400 where SNO = 'S1'";// 获取执行sql的对象StatementStatement stmt = conn.createStatement();// 执行sqlint count = stmt.executeUpdate(sql); //返回更新的数据条数// 输出执行结果System.out.println("受影响行数:" + count);// 释放资源stmt.close(); //关闭执行sql的对象conn.close(); //关闭连接}
}

结语
如果你觉得博主写的还不错的话,可以关注一下当前专栏,博主会更完这个系列的哦!也欢迎订阅博主的其他好的专栏。
🏰系列专栏
👉软磨 css
👉硬泡 javascript
👉flask框架快速入门
相关文章:
【java web篇】数据库连接池Driud的使用
📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言Ὅ…...
无损音乐格式:FLAC和ALAC
前言:我最近在弄苹果的airplay项目,发现airplay2对比airplay多了音质方面的增强。AAC和MP3接触过,但对FLAC和ALAC完全不了解,整理学习资料汇总成如下信息: AirPlay2 在2017年推出,在前一代AirPlay的基础上…...
第十届蓝桥杯省赛——4质数(质数判断,数学函数:开方函数)
题目:试题 D: 质数本题总分:10 分【问题描述】我们知道第一个质数是 2、第二个质数是 3、第三个质数是 5……请你计算第 2019 个质数是多少?【答案提交】这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数&…...
MASKGROUP: HIERARCHICAL POINT GROUPING AND MASKING FOR 3D INSTANCE SEGMENTATION
ABSTRACT 本文研究了 3D 实例分割问题,该问题在机器人技术和增强现实等现实世界中具有多种应用。由于3D物体的周围环境非常复杂,不同物体的分离非常困难。为了解决这个具有挑战性的问题,我们提出了一个新的框架来对 3D 实例进行分组和优化。在实践中,我们首先为每个点学习…...
为什么地图可视化炙手可热?
我们在谈到数据可视化的时候,可能第一反应就是中间有一个地图样式的大屏图。但有没有想过,为什么大多数的可视化大屏中间都是一张地图的样子?这张地图样式的模块究竟是什么呢?它又是怎么做出来的? 其实这张地图样式的…...
JAVA代码审计篇-SQL注入
JAVA代码审计篇-SQL注入1、SQL注入漏洞简介2、SQL注入的条件3、审计方法4、JAVA中执行SQL的几种方式(1)使用JDBC的java.sql.Statement执行SQL语句(2)使用JDBC的java.sql.PreparedStatement执行SQL语句(3)使…...
SpringBoot接口传参方式
常见GET请求和POST请求的区别1.get请求无消息体,只能携带少量数据,且不安全post请求有消息体,可以携带大量数据,且安全2.携带数据的方式:get请求将数据放在url地址中post请求将数据放在消息体body中传参方式get方式---…...
高通平台开发系列讲解(Sensor篇)AlsPs的工作原理及介绍
文章目录 一、什么是ALS?二、什么是距感(PS)?三、AlsPs的工作原理四、AlsPs的特性五、距感的校准参数说明六、光感的校准参数说明沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇文章将介绍 AlsPs 的工作原理及介绍。 一、什么是ALS? 光感的英文叫做Ambient Li…...
集群方式下的java Redis锁 lua脚本
下面说一下集群方式redis 下的原子锁 带超时时间java 代码如下:List<String> keys Collections.singletonList("test_key1");System.out.println("打印前 ::"jedisCluster.get("test_key1"));//获取lua …...
【钓鱼实测】写bug给new bing和chatGPT查。问他们林黛玉倒拔垂杨柳
BUG 错误代码 #include <iostream> #include <vector> using namespace std; int main() {vector<int> vec{1,2,3,2,4};for (auto iter vec.begin(); iter ! vec.end(); iter ){if (*iter 2) {vec.erase(iter);}}cout << vec.size() << endl…...
基于OMAPL138+FPGA核心板多核软件开发组件MCSDK开发入门(上)
本文测试板卡为创龙科技 SOM-TL138F 是一款基于 TI OMAP-L138(定点/浮点 DSP C674x + ARM9)+ 紫光同创 Logos/Xilinx Spartan-6 低功耗 FPGA 处理器设计的工业级核心板。核心板内部OMAP-L138 与 Logos/Spartan-6 通过 uPP、EMIFA、I2C 通信总线连接,并通过工业级 B2B连接器引…...
C#/.net程序调用python
C#/.net程序调用python C#的优势在于window下的开发,不仅功能强大而且开发周期短。而python则有众多的第三方库,可以避免自己造轮子,利用C#来做界面,而具体实现使用python来实现可以大大提高开发效率。本文介绍如何使用pythonnet…...
一文讲清楚如何进行主数据编码
主数据编码作为一类重要的数据资源,在信息化建设中具有重要的地位和作用,是保证现有信息系统和未来新系统建设成功的关键因素,决定着系统中的信息一致性。 编码,是一件简单的事情,但绝对不是一件容易做好的事情&#…...
SAP 详解ST02
问:在st02中看到,Program和Export/Import的Swap出现红的了,这个是什么原因啊,是不是对系统的性能有影响啊,是否应该调整一些参数啊。要怎么调整呢? 复1:双击红色的部分就可以看到相应的参数修改…...
Go程序当父进程被kill,子进程也自动退出的问题记录
平常我们启动一个后台进程,会通过nouhp &的方式启动,这样可以在退出终端会话的时候,进程仍然可以继续在后台执行(进程的父进程id会从原来的bash进程变成1) 在go程序中,通过nouhp &的方式启动子进程,预期是即使…...
window10 下使用docmer-compose使用mysql镜像部署mysql
1. 在wins中找到store,安装Debian 2. 在桌面右键点击 linux shell窗口 3. 安装docker 4. 启动docker: service docker start 5. 配置加速器,为了拉取镜像更快,修改后得重新启动docker: vi /etc/docker/daemon.json…...
软件测试补充
软件开发的生命周期:需求-计划-设计-开发编码-测试-运行维护-上线 那我们的微信APP来进行举例: 需求:我需要你们团队做这样一个社交软件,能够像QQ一样实现聊天功能,发布说说的功能,能够群聊,可以转账 计划:计划软件…...
【算法】Tire字符串
作者:指针不指南吗 专栏:算法篇 🐾或许会很慢,但是不可以停下🐾 文章目录1.Trie的基本思想1.1什么是Trie1.2字符串条件1.3如何存储字符串1.4如何查找字符串2.Trie的代码实现2.1怎么用数组建树2.2完整代码1.Trie的基本思…...
【C++】STL——list的模拟实现
list的模拟实现 文章目录list的模拟实现一、list三个基本类的模拟实现总览二、节点类接口实现模拟实现构造函数三、迭代器类接口实现1.正向迭代器默认成员函数构造函数六种运算符重载 */->//--/!/2.反向迭代器四、list类接口实现1.默认成员函数1.1.构造函数1.2.析构函数1.3.…...
SpringBoot小区物业管理系统
文章目录 项目介绍主要功能截图:后台登录车位收费管理物业收费管理投诉信息管理保修信息管理基础信息管理数据分析部分代码展示设计总结项目获取方式🍅 作者主页:Java韩立 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题库【关注我,都给你】 🍅文末获…...
Python 3.15 JIT深度解析(仅限首批内测用户验证的6项隐藏能力)
第一章:Python 3.15 JIT 的演进脉络与内测生态定位Python 3.15 并非官方已发布的正式版本,而是社区中围绕“Python JIT 加速”持续探索所形成的前瞻性技术代号,特指以 CPython 为核心、集成实验性即时编译器(JIT)的内测…...
新手必看:5分钟学会用Visio绘制PAD图和N-S图(附实例解析)
零基础掌握Visio绘制PAD图与N-S图的实战指南 在软件设计领域,可视化工具的重要性不言而喻。对于刚入门的开发者来说,掌握如何将抽象的逻辑思维转化为直观的图表是一项必备技能。Visio作为微软旗下的专业绘图工具,以其友好的界面和强大的功能&…...
掌控散热:OmenSuperHub开源风扇控制与性能优化工具深度解析
掌控散热:OmenSuperHub开源风扇控制与性能优化工具深度解析 【免费下载链接】OmenSuperHub 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub OmenSuperHub是一款专为惠普暗影精灵系列游戏本打造的开源控制软件,提供完全离线的硬件监控…...
告别绿幕!安卓免Root虚拟视频插件开发避坑指南:从Media3播放到Xposed Hook的完整流程
安卓虚拟视频插件开发实战:从Media3解码到系统Hook的避坑指南 在移动端开发领域,音视频处理与系统级功能结合一直是技术难点与创新点交汇处。许多开发者尝试过在安卓平台上实现摄像头替换功能,却往往在视频编解码、系统API拦截和性能优化等环…...
当水力裂缝撞上天然裂缝:用COMSOL相场法重现‘海马尾巴’般的转向路径
当水力裂缝邂逅天然裂缝:COMSOL相场法中的"海马尾巴"转向现象解析 在油气田开发领域,水力压裂技术正经历着从经验驱动到数字仿真的范式转变。相场法作为断裂力学模拟的前沿方法,以其独特的"无预设路径"优势,…...
剪映视频去水印+去字幕+去logo三合一操作流程(新手必备)
在短视频创作热潮中,剪映凭借免费、易用的优势,成为多数创作者的首选剪辑工具。但在实际使用中,不少人会遇到一个共性问题:剪映导出的视频自带水印、素材中夹杂多余字幕,或搬运、引用的素材带有品牌Logo,尤…...
如何通过OpCore-Simplify在30分钟内完成黑苹果EFI自动化配置
如何通过OpCore-Simplify在30分钟内完成黑苹果EFI自动化配置 【免费下载链接】OpCore-Simplify A tool designed to simplify the creation of OpenCore EFI 项目地址: https://gitcode.com/GitHub_Trending/op/OpCore-Simplify OpCore-Simplify是一款专注于自动化OpenC…...
告别黑盒:用Python手把手解析SMPP协议PDU,从抓包到解码一条龙
告别黑盒:用Python手把手解析SMPP协议PDU,从抓包到解码一条龙 当你在深夜收到短信网关返回的一串十六进制数据时,是否曾对着Wireshark抓包界面陷入沉思?SMPP协议作为运营商短信系统的"暗语",其二进制PDU结构…...
如何用Serial Port Plotter实现硬件数据可视化?4大核心功能解析
如何用Serial Port Plotter实现硬件数据可视化?4大核心功能解析 【免费下载链接】serial_port_plotter Displays real time data from serial port 项目地址: https://gitcode.com/gh_mirrors/se/serial_port_plotter 在硬件开发过程中,实时数据监…...
【VS2015_MFC_OPENCV_摄像头控制实例教程】
【VS2015_MFC_OPENCV_摄像头控制实例教程】 一、功能实现目标 能够本地、远程控制摄像头的启动和关闭; 能够显示摄像头的拍摄的图像信息; 能够截图,并保存到电脑指定的路径文件中; 二、功能实现步骤 1、搭建界面 (1)新建工程项目基于对话框的MFC (2)在对话框“工具箱…...
