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

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

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

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

步骤:

源码类:

datasource(数据源)

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


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

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

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

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

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

不执行这2个检查,

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

最后也可以增加预编译

最终连接池连接的代码

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

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

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


更改原本的封装代码

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

最终

最终的代码


测试-查询/插入

相关推荐
小冷coding2 小时前
【MySQL】MySQL 插入一条数据的完整流程(InnoDB 引擎)
数据库·mysql
鲨莎分不晴3 小时前
Redis 基本指令与命令详解
数据库·redis·缓存
专注echarts研发20年3 小时前
工业级 Qt 业务窗体标杆实现・ResearchForm 类深度解析
数据库·qt·系统架构
周杰伦的稻香5 小时前
MySQL中常见的慢查询与优化
android·数据库·mysql
冉冰学姐5 小时前
SSM学生社团管理系统jcjyw(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架·学生社团管理系统·多角色管理
nvd116 小时前
深入分析:Pytest异步测试中的数据库会话事件循环问题
数据库·pytest
appearappear6 小时前
如何安全批量更新数据库某个字段
数据库
·云扬·7 小时前
MySQL 常见存储引擎详解及面试高频考点
数据库·mysql·面试
羊小猪~~7 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
coding-fun8 小时前
电子发票批量提取导出合并助手
大数据·数据库