学JDBC 第二日

数据库连接池

作用

使数据库连接达到重用的效果,较少的消耗资源

原理

在创建连接池对象时,创建好指定个数的连接对象

之后直接获取连接对象使用即可,不用每次都创建连接对象

从数据库连接池中获取的对象的close方法真的关闭连接对象了吗?

没有关闭,只是标记状态,让其他线程可以获取使用

连接池的创建

1.创建连接池对象

DruidDataSource ds = new DruidDataSource();

2.设置连接池

a. setInitialSize(5)是设置连接池的初始连接数。这意味着在连接池被创建时,会立即建立5个数据库连接。

b. setMaxActive(8)用于设置连接池中最大的活动连接数。在这个例子中,连接池最多可以同时有8个活动连接。

c. setMaxWait(3000)设置了获取连接时的最大等待时间(毫秒)。在这个例子中,如果连接池中的所有连接都在使用中,并且一个新的连接请求进来,那么这个请求将会等待最多3000毫秒(3秒)来获取一个连接。如果在这个时间内没有可用的连接,那么请求将会抛出一个异常。

3.在配置DruidDataSource时,除了设置连接池的基本参数(如初始连接数、最大活动连接数、最大等待时间等)之外,还需要指定数据库驱动类名、数据库URL、用户名和密码,以便连接池能够正确地与数据库建立连接。

相关推荐
Edingbrugh.南空1 小时前
Flink SQLServer CDC 环境配置与验证
数据库·sqlserver·flink
码不停蹄的玄黓1 小时前
MySQL分布式ID冲突详解:场景、原因与解决方案
数据库·分布式·mysql·id冲突
爱上语文2 小时前
Redis基础(6):SpringDataRedis
数据库·redis·后端
Java初学者小白2 小时前
秋招Day14 - Redis - 应用
java·数据库·redis·缓存
丶意冷3 小时前
mybatisPlus分页方言设置错误问题 mybatisPlus对于Oceanbase的Oracle租户分页识别错误
java·数据库·oracle·oceanbase
时序数据说5 小时前
为什么时序数据库IoTDB选择Java作为开发语言
java·大数据·开发语言·数据库·物联网·时序数据库·iotdb
戒不掉的伤怀5 小时前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql
cv高级工程师YKY5 小时前
服务器 - - QPS与TPS介绍
数据库
nbsaas-boot5 小时前
高可扩展属性建模设计:架构师的全局思考与落地方案
数据库
爱上语文5 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端