数据库断言-数据库连接池

原因:现在的代码是单线程,如果遇到大并发的话就会崩溃,数据库查询就查不过来

措施:需要建立数据库连接池,可以设置连接池的数量

什么是大并发:很多客户端在idea写的程序和数据库建立连接

步骤:

源码类:

datasource(数据源)

若我们要得到datasource类就用basicdatasource类实现,先配置连接pom文件在


因为连接池要最先运行,所以使用static代码块

因为源码里是无参空构造,所以直接新建一个类,得到连接池

需要找设置连接池的数量的方法,initialsize初始大小

连接池内容要相同,不然会违背连接池原理

设置驱动的名称,添加之前的数据库的信息

不执行这2个检查,

也可以执行,但需要执行查询sql看是否一致

最后也可以增加预编译

最终连接池连接的代码

包含连接池的基本信息,连接池的设置,相关的方法

当实例化db assert这个类是就会建一个连接池,但连接池只需要1个,往池子里添加新的内容

所以需要初始化先定义空状态,循环时,如果池子为空就执行循环,如果池子不为空就不执行


更改原本的封装代码

之前是从驱动类中获取链接,现在建立了连接池,就从连接池获取借用连接

最终

最终的代码


测试-查询/插入

相关推荐
理想三旬6 小时前
关系数据库
数据库
无心水8 小时前
【分布式利器:RocketMQ】2、RocketMQ消息重复?3种幂等方案,彻底解决重复消费(附代码实操)
网络·数据库·rocketmq·java面试·消息幂等·重复消费·分布式利器
q***98529 小时前
基于人脸识别和 MySQL 的考勤管理系统实现
数据库·mysql
l1t9 小时前
用SQL求解advent of code 2024年23题
数据库·sql·算法
办公解码器10 小时前
Excel工作表打开一次后自动销毁文件,回收站中都找不到
数据库·excel
爬山算法11 小时前
Redis(127)Redis的内部数据结构是什么?
数据结构·数据库·redis
应用市场11 小时前
Qt QTreeView深度解析:从原理到实战应用
开发语言·数据库·qt
q***965811 小时前
Spring Data JDBC 详解
java·数据库·spring
Hello,C++!11 小时前
linux下libcurl的https简单例子
linux·数据库·https
合方圆~小文12 小时前
高性能20倍变焦球机转动功能监控设备
数据结构·数据库·数码相机·模块测试