资讯详情

数据库连接池

1.什么是数据库连接池?

数据库连接池(Database Connection Pooling)创建一定数量的数据库连接对象的数据库连接对象并将其保存在内存区域,允许应用程序重复使用现有的数据库连接,而不是重建一个;释放空闲时间超过最大空闲时间的数据库连接,以避免因未释放数据库连接而导致的数据库连接遗漏。

也就是说,在程序初始化时,创建一定数量的数据库连接,使用后可以放回去。下一个可以通过配置连接池的参数来控制连接池中的初始连接数、最小连接、最大连接和最大空闲时间。这些参数确保访问数据库的数量在一定的可控范围内,防止系统崩溃,使用户体验良好 二、DataSource接口

ataSource 接口由驱动程序供应商实现。实现有三种类型:

基本实现 - 生成标准的 Connection 对象 连接池实现 - 自动参与连接池生成 Connection 对象。与中间层连接池管理器一起使用。 实现分布式事务 - 生成一个 Connection 对象,该对象可用于分布式事务,在大多数情况下总是参与连接池。这与中间层交易管理器一起使用,在大多数情况下总是与连接池管理器一起使用。

三、DBCP数据源 需要的jar: commons-dbcp.jar commons-pool.jar 1.通过BasicDataSource直接创建数据源对象 创建一个为Example01类手动获取数据库的连接信息和数据源的初始信息

在这里插入图片描述 通过读取配置文件创建数据源对象

除了使用BasicDataSource除了直接创建数据源对象外,还可以使用工厂类读取配置文件来创建数据源对象,然后获取数据库连接对象。

创建一个为dbcpconfig设置数据库连接信息和数据源初始化信息的文件

然后创建一个名字Example从配置文件中获取数据库的连接信息和数据源的初始化信息。 ResultSetHandler接口

用于处理ResultSet开源将结果数据转换为不同形式的结果集。

.///BeanHandler:将结果集中的第一行包装成相应的javaBean中

./// BeanLisHandler:将结果集中的每一行封装到相应的位置JavaBaean中

.///ScalarHandler:将结果集中的数据存储成Object对象 

创建一个为BaseDao类编写查询方法

创建一个User的类来封装User对象

创建一个为ResultSetTest1的类来对Handler类对集的处理 创建一个为ResultSetTest2类用于BeanlisHandler类UI处理结果集

四、C3P0数据源 c3p0是目前最流行的开源数据库连接池之一。 当使用c3p0时,可使用CombopooledDataSource()有参与和无参与的方法; 或者通过阅读配置文件建数据源对象。 1.结构方法: 2.读取配置文件

文件名称:必须叫c3p0-config.xml或c3p0.properties 文件位置:必须在src下,当传入的configName当值为空或不存在时,使用默认配置文件创建数据源。 测试:

标签: 13p连接器643330100连接器430300001连接器9060480505连接器342300003连接器19200030220连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台