JDBC操作数据库原理:一般来说,java应用程序访问数据库的过程是:
①装载数据库驱动程序;
②通过jdbc建立数据库连接;
③访问数据库,执行sql语句;
④断开数据库连接。
数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个
数据库连接池,也就像是一个池子,不过是用链接组成的集合,称为连接池
Java程序操作数据库要先获取连接,使用完成还要关闭链接,这两个操作都比较费时,连接池就是比较方便的不耗时的方法,我们预先创建好一部分连接,放在一个池中(也就是一个集合里),并且将这些连接标记为空闲状态。如果要使用连接就从池中获取一个连接使用,用完之后再次还回池中
使用数据库连接池的好处就是缩减了系统整体响应时间,统一的管理连接,避免了常规数据库连接操作中可能出现的资源泄露。
数据库连接池运行机制
- 从连接池获取或创建可用连接;
- 使用完毕之后,把连接返回给连接池;
- 在系统关闭前,断开所有连接并释放连接占用的系统资源;
- 还能够处理无效连接(原来登记为可用的连接,由于某种原因不可再用,如超时、通讯问题),并能够限制连接池中的连接总数不低于某个预定值和不超过某个预定值。
使用数据库连接池技术的好处
- 资源重用
由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能开销。在减少系统消耗的基础上,另一方面也增进了系统运行环境的平稳性(减少内存碎片以及数据库临时进程/线程的数量)。 - 更快的系统响应速度
数据库连接池在初始化过程中,往往已经创建了若干数据库连接置于池中备用。此时连接的初始化工作均已完成。对于业务请求处理而言,直接利用了现有可用连接,避免了数据库连接初始化和释放过程的时间开销,从而缩减了系统整体响应时间。 - 统一的连接管理,避免数据库连接泄露
在较为完整的数据库连接池中,可根据预先的连接中超时设定,强制收回被占用连接。从而避免了常规数据库连接操作中可能出现的资源泄露。