java web数据库连接池

本文深入解析数据库连接池的概念,探讨其如何优化数据库访问效率,减少资源消耗。介绍标准接口DataSource及其实现,如C3P0和Druid,并提供详细的配置和使用步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库连接池

原来的连接数据库操作,在创建数据库连接对象之后,一旦执行完毕就会释放资源,等到下一次数据库操作又需
要重新连接,太过于麻烦且消耗资源。
数据库连接池的概念:其实就是一个容器(集合),存放数据库连接的容器
当系统初始化后,容器就被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,
用户访问完之后,会将连接对象归还给容器,节省了重新创建和销毁的麻烦。
javax.sql中有一个DataSource 的接口,表示了数据源,接口实现由数据库厂商提供 


实现:
	1.标准接口:DataSource   
		1.方法:
			获取连接:getConnection()
			归还连接:如果连接对象是从连接池中获取的,那么调用Connection.close()方法,不是关闭连接了,而是归还连接
	2.一般我们不去实现它,有数据库厂商来实现
		1.C3P0:
		2.Druid:
	3.C3P0
		1.步骤:
			1.导入jar包 c3p0-0.9.5.2.jar包 mchange-commons-java-0.2.12.jar包
			2.定义配置文件:
				名称:c3p0.properties    or    c3p0-config.xml
				路径:放在src目录下即可
			3.创建核心对象  数据库连接池对象  ComoPooledDataSource
			4.获取连接:getConnection
			DataSource ds=new ComoPooledDataSource();
			Connection conn=ds.getConnection();
		
	4.Druid
		1.步骤
			1.导入jar包 druid-1.0.9.jar  
			2.定义配置文件
				可以是properties形式的
				可以叫任意名称,可以放在任意目录下
				配置文件要进行加载才能找到:定义properties对象
					Properties pro=new Properties();
					Inputstream is=DruidDemo(类).class.getClassLoader().getResourceAsStream("druid.properties");
					pro.load(is);
					
			3.获取数据库连接池对象:通过工厂来获取 DruidDataSourceFactory
				DruidDataSourceFactory.createDataSource(properties对象)
			4.获取连接 getConnection
	通常使用数据库连接池还是要定义工具类的方法
		1.定义一个类JDBCUtills 
		2.提供静态代码块加载配置文件,初始化连接池对象
		3提供方法:
			1.获取连接方法:通过数据库连接池获取连接
			2.释放资源
			3.获取连接池的方法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值