什么是连接池
没有连接池的情况
每次CRUD操作都要使用数据库的时候,都要创建一个数据库连接对象
普通的JDBC数据库连接使用 DriverManager 来获取
每次向数据库建立连接的时候都要将 Connection 加载到内存中
然后再验证用户名和密码花费时间0.05s~1s左右
每次CRUD操作就向数据库要要一个连接,执行完成后再断开连接。
这样的方式将会消耗大量的资源和时间。
数据库的连接资源并没有得到很好的重复利用
若同时有几百人甚至几千人在线,
频繁的进行数据库连接操作将占用很多的系统资源,
严重的甚至会造成服务器的崩溃。
数据库连接池
池
保存对象的容器
连接池
保存数据库连接对象的容器
作用
初始化时创建一定数量的对象。需要时直接从池中取出一个空闲对象,
用完后并不直接释放掉对象,而是再放到对象池中以方便下一次对象请求可以直接复用。
池技术的优势是,可以消除对象创建所带来的延迟,从而提高系统的性能。
数据库连接池
数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”。
预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,
只需从“缓冲池”中取出一个,使用完毕之后再放回去。
我们可以通过设定连接池最大连接数来防止系统无尽的与数据库连接
可以通过连接池的管理机制监视数据库的连接的数量﹑使用情况,为系统开发﹑测试及性能调整提供依据。